• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    纯CSS实现不同分辨率下实现样式自适应
    POST TIME:2017-11-13 00:40

    用户体验一直是SEO最注重的,一个好的网页设计能给用户带来舒适的体验。而很多用于SEO优化的网站,画面实在难看...为了优化而优化。如果移动端能自适应最好尽量少调用JS,提高网站打开速度。

    纯CSS实现PC浏览器(显示屏幕)或移动端浏览器宽度样式的自适应。将用到@media样式进行判断,不支持IE9以下版本,需要增加一个JS。

    一般我们设计网页的时候PC端宽度都在900-1400像素之间,移动端宽度在320-640像素之间,用@media样式选择可以让PC端和移动端自适应,对简单的文章类网站可以不需要单独开发移动端。

    css样式选择器写法如下:

    @media screen and (判断属性){
    css样式
    }

    不过多解释, 看案例:

    <style>
    .main{height:400px;border:1px solid #eee}
    @media screen and (min-width:1201px){
    .main{width:1200px}
    }
    /*设置在屏幕(浏览器)不小于1201px时,main的宽度显示宽度为1200px*/
    @media screen and (max-width:1200px){
    .main{width:900px}
    }
    /*设置在屏幕(浏览器)不大于1200px时,main的宽度显示宽度为900px*/
    </style>

    必要说明:

    注意css代码的先后顺序,必须尺寸由大到小。这里还要提到书写格式也要按照上面的这样写,全部用英文字符,也可写成压缩的样式:@media screen and (max-width:1200px){.main{width:900px}} 结果是有效,有些失效的原因注意检查“and”的前后是否都有一个空格字符。

    max-widht指展示的最大宽度,一般是浏览器窗口宽度。

    max-device-width是指所展示使用的设备支持宽度,如一般电脑分辨率1280px,手机等移动设备支持展示宽度(安卓移动设备宽度如360 、480px)等。这个需要在</head>之前引用一段代码:

    <meta name="viewport" content="width=device-width, initial-scale=1" />

    IE9以下兼容

    为了兼容IE9以下版本浏览器,需要加入一个google的JS,或者下载到本地,再调用。把以下代码加到</head>之前。

    <!--[if lt IE 9]>
    <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
    <![endif]-->

    完整html代码示例

    其他div可以把样式写在同一个规则下,这样写在同一个css文件或者写在html下,可以减少网页加载链接次数,速度快,提高用户体验。

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8" />
    <title>无标题文档</title>
    <style>
    .main{height:400px;border:1px solid #eee}
    .head{height:100px;margin:0 auto;background:#c00}
    @media screen and (min-width:1201px){
    .main{width:1200px}
    .head{width:1200px}
    }
    @media screen and (max-width:1200px){
    .main{width:900px}
    .head{width:900px}
    }
    </style>
    <!--[if lt IE 9]>
    <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
    <![endif]-->
    </head>
    <body>
    <div class="main">DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度</div>
    <div class="head">DIV宽度会随浏览器宽度变化哦,试试改变浏览器宽度1</div>
    </body>
    </html>

    
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!