


How do I use media queries to apply different styles based on the screen size or device characteristics?
Jun 23, 2025 am 12:42 AMMedia queries allow you to apply CSS styles based on device characteristics like screen size, orientation, and resolution. 1. Start with mobile-first design, applying base styles for small screens. 2. Use min-width and max-width to define breakpoints for tablets and desktops. 3. Target additional features such as orientation, resolution, aspect ratio, and dark mode preferences. 4. Maintain clean code by using consistent breakpoints, grouping related queries, and leveraging CSS variables for easier updates.
To use media queries effectively, you're essentially telling the browser: "If the screen meets these conditions, apply these styles." They’re a core part of responsive web design and let you tailor layouts for different devices or screen sizes.
What Exactly Are Media Queries?
Media queries are CSS techniques that let you apply styles based on the characteristics of the device — like screen width, height, orientation, resolution, and more. The most common use is adjusting layout based on screen size, but they can go beyond that.
A basic structure looks like this:
@media [media type] and ([media feature]) { /* CSS rules here */ }
For example, if you want to change the background color when the screen is narrower than 600px:
@media screen and (max-width: 600px) { body { background-color: lightblue; } }
You can also target print styles, high-resolution screens, or even dark mode preferences.
How to Use Media Queries Based on Screen Size
Most developers start with mobile-first design, meaning base styles work on small screens, then add media queries to enhance the experience for larger ones.
Here’s how to do it step by step:
- Start with default styles for mobile.
- Add
@media
blocks that target wider screens as needed. - Use
min-width
andmax-width
to define breakpoints.
Common breakpoints include:
- Mobile: up to 767px
- Tablet: 768px – 1023px
- Desktop: 1024px and above
Example:
/* Default mobile styles */ body { font-size: 16px; } /* Tablet styles */ @media screen and (min-width: 768px) { body { font-size: 18px; } } /* Desktop styles */ @media screen and (min-width: 1024px) { body { font-size: 20px; } }
This way, your site adapts smoothly as the screen gets bigger.
Other Useful Device Features You Can Target
Besides screen width, there are other features worth checking:
Orientation: Portrait vs landscape
@media screen and (orientation: portrait) { ... }
Resolution: High-DPI screens (like Retina displays)
@media screen and (min-resolution: 2dppx) { ... }
Aspect ratio: Useful for video players or full-screen apps
@media screen and (aspect-ratio: 16/9) { ... }
Dark mode preference:
@media (prefers-color-scheme: dark) { ... }
These help you fine-tune the user experience without relying on JavaScript.
Tips for Writing Clean and Maintainable Media Queries
It's easy to get carried away with too many queries, so keep things organized:
- Stick to a few consistent breakpoints across your project.
- Keep related media queries together in your CSS file, or group them at the end.
- Avoid using
max-width
unless necessary —min-width
makes stacking easier. - Consider using CSS variables for your breakpoints to make changes easier later.
Also, test your site on real devices or good emulators to make sure your styles kick in where they should.
That’s basically how media queries work. They’re not complicated once you understand how to set conditions and layer styles accordingly.
The above is the detailed content of How do I use media queries to apply different styles based on the screen size or device characteristics?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Thevertical-alignpropertyinCSSalignsinlineortable-cellelementsvertically.1.Itadjustselementslikeimagesorforminputswithintextlinesusingvalueslikebaseline,middle,super,andsub.2.Intablecells,itcontrolscontentalignmentwithtop,middle,orbottomvalues,oftenu

accent-color is an attribute used in CSS to customize the highlight colors of form elements such as checkboxes, radio buttons and sliders; 1. It directly changes the default color of the selected state of the form control, such as changing the blue check mark of the checkbox to red; 2. Supported elements include input boxes of type="checkbox", type="radio" and type="range"; 3. Using accent-color can avoid complex custom styles and extra DOM structures, and maintain native accessibility; 4. It is generally supported by modern browsers, and old browsers need to be downgraded; 5. Set accent-col

InstallDartSassvianpmafterinstallingNode.jsusingnpminstall-gsass.2.CompileSCSStoCSSusingthecommandsassinput.scssoutput.css.3.Usesass--watchinput.scssoutput.csstoauto-compileonsave.4.Watchentirefolderswithsass--watchscss:css.5.Usepartialswith_prefixfo

To change the text color in CSS, you need to use the color attribute; 1. Use the color attribute to set the text foreground color, supporting color names (such as red), hexadecimal codes (such as #ff0000), RGB values (such as rgb(255,0,0)), HSL values (such as hsl(0,100%,50%)), and RGBA or HSLA with transparency (such as rgba(255,0,0,0.5)); 2. You can apply colors to any element containing text, such as h1 to h6 titles, paragraph p, link a (note the color settings of different states of a:link, a:visited, a:hover, a:active), buttons, div, span, etc.; 3. Most

CSStransitionsenablesmoothpropertychangeswithminimalcode,idealforhovereffectsandinteractivefeedback.1.Usethesyntaxtransition:propertydurationtiming-functiondelay;todefinetransitions,liketransition:background-color0.3sease0.1s;.2.Specifytransition-pro

UseautomatedtoolslikePurgeCSSorUnCSStoscanandremoveunusedCSS;2.IntegratepurgingintoyourbuildprocessviaWebpack,Vite,orTailwind’scontentconfiguration;3.AuditCSSusagewithChromeDevToolsCoveragetabbeforepurgingtoavoidremovingneededstyles;4.Safelistdynamic

The style placement method needs to be selected according to the scene. 1. Inline is suitable for temporary modification of single elements or dynamic JS control, such as the button color changes with operation; 2. Internal CSS is suitable for projects with few pages and simple structure, which is convenient for centralized management of styles, such as basic style settings of login pages; 3. Priority is given to reuse, maintenance and performance, and it is better to split external link CSS files for large projects.

Astackingcontextisaself-containedlayerinCSSthatcontrolsthez-orderofoverlappingelements,wherenestedcontextsrestrictz-indexinteractions;itiscreatedbypropertieslikez-indexonpositionedelements,opacity
