原文链接: Introduction to CSS3 Media Queries
http://www.developer.com/lang/css/introduction-to-css3-media-queries.html
原文日期: 2014年2月21日 翻译日期: 2014年2月26日 翻译人员: 铁锚随着移动设备的日益普及,web开发人员需要确保他们的网站在不同的设备上都能良好展现。在显示时的一个重要手段就是为不同的设备应用不同的CSS规则。为此CSS3媒体查询(media queries)允许您根据不同的媒体类型及其功能应用不同的CSS规则。本文探讨CSS3媒体查询是什么以及如何在您的web页面中使用它们。
现在你对媒体查询有了一些基本的了解,让我们继续学习如何编写媒体查询。
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <link href="StyleSheet1.css" rel="stylesheet" /> </head> <body> <div class="mycontent"> Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! </div> </body> </html>
@media (min-width: 1000px) { .mycontent { width:500px; background-color:#ffd800; color:#ff0000; border:2px solid red; padding:5px; } } @media (max-width: 600px) { .mycontent { width:200px; background-color:#00ff90; color:navy; border:2px solid darkblue; padding:2px; } }
在上面的例子中,如果(浏览器)窗口宽度大于等于1000 px,则第一段样式生效; 如果(浏览器)窗口宽度小于等于600 px,则第二段样式生效。
(浏览器)窗口宽度大于等于1000 px时:
当然,目前我们还没有考虑查看区域在600px - 1000px之间的情况,但是你可以轻易地为这些情况下提供一个默认mycontent类。
@media screen and (min-width: 1000px) { .mycontent { width:500px; background-color:#ffd800; color:#ff0000; border:2px solid red; padding:5px; } } @media screen and (max-width: 600px) { .mycontent { width:200px; background-color:#00ff90; color:navy; border:2px solid darkblue; padding:2px; } }
您还可以在媒体查询中指定多个条件。
例如,您可以编写以下媒体查询来兼容查看区域 在600 px - 1000 px之间的情况。
@media (min-width: 600px) and (max-width:1000px) { .mycontent { width:350px; background-color:#ff00dc; color:navy; border:2px solid #4800ff; padding:2px; } }
在上面的例子中使用了可见区域的宽度。
如果你想使用屏幕的尺寸来检查,你可以使用max-device-width 和 max-device-height参数。
要了解更多媒体查询细节, 请看 https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries 。
<link href="StyleSheet2.css" rel="stylesheet" media="screen and (min-width: 1000px)" /> <link href="StyleSheet3.css" rel="stylesheet" media="screen and (max-width: 600px)" />
总结
CSS3媒体查询允许您基于媒体类型(media type)和媒体特性(media features)应用CSS规则。这使得根据请求设备应用不同的CSS规则变得容易。诸如设备尺寸,可视区域和屏幕方向等媒体特性,可以使用媒体查询进行测试。总的来说,媒体查询是一个受欢迎的CSS新功能,为移动设备开发网站的web开发人员将会发现这个功能特别有吸引力。
Using CSS3 to Jazz up your Web Forms
http://www.developer.com/lang/css/using-css3-to-jazz-up-your-web-forms.html
Creating a Complete Web Page With HTML5
http://www.developer.com/lang/creating-a-complete-web-page-with-html5.html