找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1000|回复: 0

[分享] 纯CSS实现不同分辨率下实现样式自适应

[复制链接]
发表于 2018-7-19 20:35:21 | 显示全部楼层 |阅读模式 来自 河南省新乡市
用户体验一直是SEO最注重的,一个好的网页设计能给用户带来舒适的体验。而很多用于SEO优化的网站,画面实在难看...为了优化而优化。如果移动端能自适应最好尽量少调用JS,提高网站打开速度。
       纯CSS实现PC浏览器(显示屏幕)或移动端浏览器宽度样式的自适应。将用到@media样式进行判断,不支持IE9以下版本,需要增加一个JS。
       一般我们设计网页的时候PC端宽度都在900-1400像素之间,移动端宽度在320-640像素之间,用@media样式选择可以让PC端和移动端自适应,对简单的文章类网站可以不需要单独开发移动端。
css样式选择器写法如下:
@media screen and (判断属性){
css样式
}
      不过多解释, 看案例:
  1.   <style>
  2. .main{height:400px;border:1px solid #eee}
  3. @media screen and (min-width:1201px){
  4. .main{width:1200px}
  5. }
  6. /*设置在屏幕(浏览器)不小于1201px时,main的宽度显示宽度为1200px*/
  7. @media screen and (max-width:1200px){
  8. .main{width:900px}
  9. }
  10. /*设置在屏幕(浏览器)不大于1200px时,main的宽度显示宽度为900px*/
  11. </style>
复制代码

必要说明:
       注意css代码的先后顺序,必须尺寸由大到小。这里还要提到书写格式也要按照上面的这样写,全部用英文字符,也可写成压缩的样式:@media screen and (max-width:1200px){.main{width:900px}}  结果是有效,有些失效的原因注意检查“and”的前后是否都有一个空格字符。
       max-widht指展示的最大宽度,一般是浏览器窗口宽度。
       max-device-width是指所展示使用的设备支持宽度,如一般电脑分辨率1280px,手机等移动设备支持展示宽度(安卓移动设备宽度如360 、480px)等。这个需要在</head>之前引用一段代码:
  1. <meta name="viewport" content="width=device-width, initial-scale=1"  />
复制代码

IE9以下兼容
       为了兼容IE9以下版本浏览器,需要加入一个google的JS,或者下载到本地,再调用。把以下代码加到</head>之前。
  1. <!--[if lt IE 9]>
  2. <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
  3. <![endif]-->
复制代码

完整html代码示例
       其他div可以把样式写在同一个规则下,这样写在同一个css文件或者写在html下,可以减少网页加载链接次数,速度快,提高用户体验。
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.   <meta charset="utf-8" />
  5.   <title>无标题文档</title>
  6.   <style>
  7.    .main{height:400px;border:1px solid #eee}
  8.    .head{height:100px;margin:0 auto;background:#c00}
  9.    @media screen and (min-width:1201px){
  10.    .main{width:1200px}
  11.    .head{width:1200px}
  12.    }
  13.    @media screen and (max-width:1200px){
  14.    .main{width:900px}
  15.    .head{width:900px}
  16.    }
  17. </style>
  18. <!--[if lt IE 9]>
  19. <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
  20. <![endif]-->
  21. </head>
  22. <body>
  23. <div class="main">DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度</div>
  24. <div class="head">DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度1</div>
  25. </body>
  26. </html>
复制代码

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-4-26 14:28 , Processed in 0.042542 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表