我一直在做一些关于媒体查询的研究,但我仍然不太明白如何定位特定尺寸的设备.

我希望能够瞄准台式机、平板电脑和移动设备.我知道会有一些差异,但如果有一个通用系统可以用来瞄准这些设备就好了.

我发现了一些例子:

# Mobile
only screen and (min-width: 480px)

# Tablet
only screen and (min-width: 768px) 

# Desktop
only screen and (min-width: 992px)

# Huge
only screen and (min-width: 1280px) 

或者:

# Phone
only screen and (max-width:320px)

# Tablet
only screen and (min-width:321px) and (max-width:768px)

# Desktop
only screen and (min-width:769px)

每个设备的断点应该是什么?

推荐答案

IMO以下是最佳断点:

@media (min-width:320px)  { /* smartphones, portrait iPhone, portrait 480x320 phones (Android) */ }
@media (min-width:480px)  { /* smartphones, Android phones, landscape iPhone */ }
@media (min-width:600px)  { /* portrait tablets, portrait iPad, e-readers (Nook/Kindle), landscape 800x480 phones (Android) */ }
@media (min-width:801px)  { /* tablet, landscape iPad, lo-res laptops ands desktops */ }
@media (min-width:1025px) { /* big landscape tablets, laptops, and desktops */ }
@media (min-width:1281px) { /* hi-res laptops and desktops */ }

Edit:经过优化,可以更好地处理960栅格:

@media (min-width:320px)  { /* smartphones, iPhone, portrait 480x320 phones */ }
@media (min-width:481px)  { /* portrait e-readers (Nook/Kindle), smaller tablets @ 600 or @ 640 wide. */ }
@media (min-width:641px)  { /* portrait tablets, portrait iPad, landscape e-readers, landscape 800x480 or 854x480 phones */ }
@media (min-width:961px)  { /* tablet, landscape iPad, lo-res laptops ands desktops */ }
@media (min-width:1025px) { /* big landscape tablets, laptops, and desktops */ }
@media (min-width:1281px) { /* hi-res laptops and desktops */ }

在实践中,许多设计师将像素转换为em,很大程度上是因为em的zoom 效果更好.在标准变焦1em === 16px下,将像素乘以1em/16px得到em秒.例如,320px === 20em.

作为对这一 comments 的回应,min-width是"移动优先"设计的标准,你可以从最小的屏幕开始设计,然后添加不断增加的媒体查询,一直到越来越大的屏幕上.

无论您喜欢min-max-还是它们的组合,都要知道规则的顺序,请记住,如果多个规则与同一元素匹配,则后面的规则将覆盖前面的规则.

Css相关问答推荐

沿浮动形状—面元素外路径将文字垂直居中""

在Angular mat-drawer组件中防止在mat-drawer-innercontainer中添加滚动条

如何以Angular 将下拉面板的宽度与其文本框对齐

如何使用DirectusImage标签作为背景?

CSS 内联 Flex 和段落换行

在网格中整齐地对齐项目

如何在使用 bslib 5 的shiny 应用程序中使用样式参数排列 ui 元素

如何阻止 Mud Blazor MudTable 列扩展以适合文本

如何在保持默认外观的同时更改 javaFX 中按钮的突出显示 colored颜色

我怎样才能让这个边框出现在按钮元素的上方?

基于内容显示(show)/隐藏(hide)同级div

如何创建一个与 Bootstrap 3 配合得很好的粘性页脚

如何在 CSS 中控制列表样式类型光盘的大小?

属性nowrap被认为是过时的.建议使用较新的构造.它是什么?

悬停时如何在图像上显示文字?

CSS设置宽度以填充剩余区域的百分比

CSS:在图像周围创建白光

如何更改 HTML 输入标签的字体和字体大小?

如何使 window.scrollTo() 效果平滑

CSS3可以转换字体大小吗?