关于响应式布局,你了解多少

作者:乐于分享的小团体
浏览数:
时间:2020-03-25

响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动互联网浏览而诞生的。


响应式布局可以为不同终端的用户提供更加舒适的界面和更好的用户体验,而且随着大屏幕移动设备的普及,用“大势所趋”来形容也不为过。随着越来越多的设计师采用这个技术,我们不仅看到很多的创新,还看到了一些成形的模式。


优点和缺点



优点:

1.面对不同分辨率设备灵活性强

2.能够快捷解决多设备显示适应问题


缺点:

1.兼容各种设备工作量大,效率低下

2.代码累赘,会出现隐藏无用的元素,加载时间加长

3.其实这是一种折中性质的设计解决方案,多方面因素影响而达不到最佳效果

4.一定程度上改变了网站原有的布局结构,会出现用户混淆的情况


我们在上面了解了什么是响应式布局,那在我们的实际项目中应该怎么去布局呢?在以往我们布局网站的时候都会受到不同浏览器的兼容性的困扰,还要来个不同尺寸设备,我们该怎么淡定下来呢?

有需求就会有解决方案,说到响应式布局,就不得不提起CSS3中的Media Query(媒介查询),这可是个好东西,易用、强大、快捷……Media Query是制作响应式布局的一个利器,使用这个工具,我们可以非常方便快捷的制造出各种丰富的实用性强的界面。接下来就一起来深入的了解Media Query。


Media Query是什么?

通过不同的媒介类型和条件定义样式表规则。媒介查询让CSS可以更精确作用于不同的媒介类型和同一媒介的不同条件。媒介查询的大部分媒介特性都接受min和max用于表达”大于或等于”和”小于或等于”。如:width会有min-width和max-width媒介查询可以被用在CSS中的@media和@import规则上,也可以被用在HTML和XML中。通过这个标签属性,我们可以很方便的在不同的设备下实现丰富的界面,特别是移动设备,将会运用更加的广泛。



Media query能够获取哪些值?

设备的宽和高device-width,device-height显示屏幕/触觉设备。

渲染窗口的宽和高width,height显示屏幕/触觉设备。

设备的手持方向,横向还是竖向orientation(portrait|lanscape)和打印机等。

画面比例aspect-ratio点阵打印机等。

设备比例device-aspect-ratio-点阵打印机等。

对象颜色或颜色列表color,color-index显示屏幕。

设备的分辨率resolution。


语法结构及用法

@media 设备名 only (选取条件) not (选取条件) and(设备选取条件),设备二{sRules}


响应式布局的步骤



1.设置 Meta 标签

大多数移动浏览器将HTML页面放大为宽的视图(viewport)以符合屏幕分辨率。你可以使用视图的meta标签来进行重置。下面的视图标签告诉浏览器,使用设备的宽度作为视图宽度并禁止初始的缩放。在< head >标签里加入这个meta标签。

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

(user-scalable = no 属性能够解决 iPad 切换横屏之后触摸才能回到具体尺寸的问题。)


2. 通过媒介查询来设置样式 Media Queries

它根据条件告诉浏览器如何为指定视图宽度渲染页面。假如一个终端的分辨率小于 980px,那么可以这样写:

@media screen and (max-width: 980px) {
#head { … }
#content { … }
#footer { … }
}

(这里的样式就会覆盖上面已经定义好的样式。)


3. 设置多种视图宽度

假如我们要设定兼容 iPad 和 iphone 的视图,那么可以这样设置:

/** iPad **/
@media only screen and (min-width: 768px) and (max-width: 1024px) {}
/** iPhone **/
@media only screen and (min-width: 320px) and (max-width: 767px) {}

恩,差不多就这样的一个原理。


响应式布局的注意事项



1. 宽度需要使用百分比

例如这样:

#head { width: 100% }
#content { width: 50%; }


2. 处理图片缩放的方法

简单的解决方法可以使用百分比,但这样不友好,会放大或者缩小图片。那么可以尝试给图片指定的最大宽度为百分比。假如图片超过了,就缩小。假如图片小了,就原尺寸输出。

img { width: auto; max-width: 100%; }

用::before和::after伪元素 +content 属性来动态显示一些内容或者做其它很酷的事情,在 css3 中,任何元素都可以使用 content 属性了,这个方法就是结合 css3 的 attr 属性和 HTML 自定义属性的功能:HTML 结构:

< img src="image.jpg" data-ke-src="image.jpg"
data-src-600px="image-600px.jpg"
data-src-800px="image-800px.jpg"
alt="">

CSS 控制:

@media (min-device-width:600px) {
img[data-src-600px] {
content: attr(data-src-600px, url);
}
}

@media (min-device-width:800px) {
img[data-src-800px] {
content: attr(data-src-800px, url);
}
}


3. 其他属性

例如 pre ,iframe,video 等,都需要和img一样控制好宽度。对于table,建议不要增加 padding 属性,低分辨率下使用内容居中:

table th, table td { padding: 0 0; text-align: center; }

上一篇: 不会配色怎么办!今天教你从零开始学配色
下一篇: 免费商用字体都在这里!再也不用担心版权问题了

深圳SEO优化公司铁岭优化网站专业公司网站优化排名企业网站内外链优化方法网站制作优化仍亿乚云速捷优化目录提交网站收录吗河源网站优化入门滨城区英文网站优化设计网站关系模式优化建材行业网站优化传播seo优化网站推广价格太原建材行业网站优化推广特点济南网站优化推广方案网站优化资讯佛山门窗网站seo优化抚顺网站优化推广通化百度网站优化温州网站优化服务海口网站关键优化湖北新站网站优化哪家好网站过度优化会怎么样巩义百度网站优化怎样收费武威网站系统优化网站建设优化推广中小型企业网站优化廊坊规模大的珠宝行业网站优化江门网站优化怎么做崇州如何自己优化网站网站竞价优化阳逻薪酬优化网站国内网站优化系统加盟代理项目歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化