HTML5响应式(⾃适应)⽹页设计
⾃适应⼁Html5响应式(⾃适应)⽹页设计
⽬录
第⼀步:在⽹页代码的头部,加⼊⼀⾏viewport元标签
<meta name="viewport" content="width=device-width, initial-scale=1" />
viewport是⽹页默认的宽度和⾼度,上⾯这⾏代码的意思是:⽹页宽度默认等于屏幕宽度(width=device-width),原始缩放⽐例(initial-scale=1)为1.0,即⽹页初始⼤⼩占屏幕⾯积的100%。
所有主流浏览器都⽀持这个设置,包括IE9。对于那些⽼式浏览器(主要是IE6、7、8),需要使⽤css3-mediaqueries.js
<!--[if lt IE 9]>
    <script src="lecode/svn/trunk/css3-mediaqueries.js"></script>
<![endif]-->
第⼆步:(注意)不使⽤绝对宽度,字体⼤⼩
width:auto; / width:XX%;
第三步:(注意)字体⼤⼩
字体⼤⼩是页⾯默认⼤⼩的100%,即16像素
字体不要使⽤绝对⼤⼩"PX",要使⽤相对⼤⼩“REM”
html{font-size:62.5%;}
[html] view plain copy
body {font:normal 100% Arial,sans-serif;font-size:14px; font-size:1.4rem; }
第四步:流动布局
"流动布局"的含义是,各个区块的位置都是浮动的,不是固定不变的
.left{ width:30%; float:left}
.
right{ width:70%; float:right;}
其好处是,如果宽度太⼩,放不下两个元素,后⾯的元素会⾃动滚动到前⾯元素的下⽅,不会在⽔平⽅向overflow(溢出),避免了⽔平滚动条的出现
第五步:选择加载CSS
"⾃适应⽹页设计"的核⼼,就是CSS3引⼊的Media Query模块。⾃动探测屏幕宽度,然后加载相应的CSS⽂件
<link rel="stylesheet" type="text/css" media="screen and (max-device-width: 600px)"
href="style/css/css600.css" />
上⾯的代码意思是,如果屏幕宽度⼩于600像素(max-device-width: 600px),就加载css600.css⽂件。
如果屏幕宽度在600像素到980像素之间,则加载css600-980.css⽂件
<link rel="stylesheet" type="text/css" media="screen and (min-width: 600px) and (max-device-width: 980px)"
href="css600-980.css" />
另有(不建议使⽤):除了⽤html标签加载CSS⽂件,还可以在现有CSS⽂件中加载
@import url("css600.css") screen and (max-device-width: 600px);
第六步:CSS的@media规则
@media screen and (max-device-width: 400px) {  .left{ float:none;} }
当屏幕⼩于400时,left取消了浮动
第七步:图⽚的⾃适应
"⾃适应⽹页设计"还必须实现图⽚的⾃动缩放。
img, object {max-width: 100%;}
⽼版本的IE不⽀持max-width,所以只好写成:
img {width: 100%;}
windows平台缩放图⽚时,可能出现图像失真现象。这时,可以尝试使⽤IE的专有命令img { width:100%; -ms-interpolation-mode: bicubic;}
或使⽤js--imgSizer.js
addLoadEvent(function() {
var imgs = ElementById("content").getElementsByTagName("img");
    llate(imgs);
  });
注:如有条件的话,最好还是根据不同⼤⼩的屏幕,加载不同分辨率的图⽚
简易式操作:
html网页设计的标题<style type="text/css">
img{ max-width:100%;}
video{ max-width:100%; height:auto;}
header ul li{ float:left; list-style:none; list-style-type:none; margin-right:10px;}
header select{display:none;}
@media (max-width:960px){
header ul{ display:none;}
header select{ display:inline-block;}
}
</style>
<body>
<header>
<ul>
<li><a href="#" class="active">Home</a></li>
<li><a href="#">AAA</a></li>
<li><a href="#">BBB</a></li>
<li><a href="#">CCC</a></li>
<li><a href="#">DDD</a></li>
</ul>
<select>
<option class="selected"><a href="#">Home</a></option>
<option value="/AAA">AAA</option>
<option value="/BBB">BBB</option>
<option value="/CCC">CCC</option>
<option value="/DDD">DDD</option>
</select>
</header>
</body>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。