说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

IE10新功能解析 支持Media Query(图)

HTML文档下载 WORD文档下载 PDF文档下载
Media Query是一个神奇的技术,它使不同的显示设备拥有更合理的显示效果,并允许使用媒体表达式指定媒体类型,然后根据不同的媒体类型来选择相应的样式。

随着移动互联网的盛行,Web设计师的设计将被显示在两种屏幕上,桌面大屏幕和移动小屏幕,如何让同一个网站同时适应完全不同的两种尺寸的屏幕,这是一个很久以来都没有完美解决方案。为解决如今各式各样的浏览器分辨率以及不同移动设备的显示效果,CSS3的Media Queries出现了。

Media Query是一个神奇的技术,它使不同的显示设备拥有更合理的显示效果,并允许使用媒体表达式指定媒体类型,然后根据不同的媒体类型来选择相应的样式。

首先,我们要知道Media Query的属性和常用的CSS属性有些区别,有一些特别定义的属性需要注意,如下所示:

Media Query让CSS3可以更精确作用于不同的媒体类型和同一媒体的不同条件。Media query的大部分媒体特性都接受max和min,用于表达“大于或等于”和“小于或等于”。比如:width会有min-width和max-width。在CSS3中的@media、@import规则上和HTML、XML中均可以使用Media Query,用户可以方便在不同的设备下实现丰富的界面,特别是移动设备的广泛运用。

下面示例是根据桌面浏览环境不同,通过Media Query来监测那些宽度小于980px的设备分辨率,从而布局元素的宽度随着浏览器窗口的尺寸变化进行调整。代码如下:

  1. <div id="pagewrap">  
  2. <header id="header">  
  3. <hgroup>  
  4. <h1 id="site-logo">Demo</h1>  
  5. <h2 id="site-description">Site Description</h2>  
  6. </hgroup>  
  7. <nav>  
  8. <ul id="main-nav">  
  9. <li><a href="#">Home</a></li>  
  10. </ul>  
  11. </nav>  
  12. <form id="searchform">  
  13. <input type="search">  
  14. </form>  
  15. </header>  
  16. <div id="content">  
  17. <article class="post"> blog post </article>  
  18. </div>  
  19. <aside id="sidebar">  
  20. <section class="widget"> widget </section>  
  21. </aside>  
  22. <footer id="footer"> footer </footer>  
  23. </div>  
  24. /* 禁用iPhone中Safari的字号自动调整 */ 
  25. html {  
  26.   -webkit-text-size-adjust: none;  
  27. }  
  28. /* 设置HTML5元素*/ 
  29. article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {  
  30. display: block;}  
  31. /* 设置图片等自适应调整 */ 
  32. img {  
  33.  max-width: 100%;  
  34.  height: auto;  
  35.  width: auto\9;  
  36. }  
  37. .video embed, .video object, .video iframe {  
  38.   width: 100%;  
  39.   height: auto;  

在HTML代码中调用JS文件:

  1. <!--[if it IE10]>  
  2. <script src="http://css3-html5-js.googlecode.com/svn/trunk/css3-html5.js"></script>  
  3. <! [end if]-->  

当然,Media Query可帮助大家解决横屏和竖屏切换问题,使用Media Query判断用户是否已经横屏,如果横屏,则采用自定义的横屏样式的渲染,也可以完美解决android终端的显示屏幕的复杂性。

CSS 3的Media Query是一个很强大、很好用的工具,它为我们在不同的设备和环境下实现丰富的界面提供了一种快捷方法,现在IE10已经支持Media Query了,在提高用户体验上又提升了一个台阶,帮助我们使不同设备之间的UI能保持更合理的显示方式。虽然它的最大舞台是在高端手持设备,相信随着移动互联网的快速发展,Media Query也会发挥越来越强大的作用。

备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘