响应式布局

响应式布局

介绍

  • 响应式布局是 Ethan Marcotte 在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动互联网浏览而诞生的。
  • 响应式布局可以为不同终端的用户提供更加舒适的界面和更好的用户体验,而且随着目前大屏幕移动设备的普及,用“大势所趋”来形容也不为过。随着越来越多的设计师采用这个技术,我们不仅看到很多的创新,还看到了一些成形的模式。
  • Responsive design,意在实现不同屏幕分辨率的终端上浏览网页的不同展示方式。通过响应式设计能使网站在手机和平板电脑上有更好的浏览阅读体验。

响应式布局的优点和缺点

优点

  • 面对不同分辨率设备灵活性强
  • 能够快捷解决多设备显示适应问题

缺点

  • 兼容各种设备工作量大,效率低下
  • 代码累赘,会出现隐藏无用的元素,加载时间加长
  • 其实这是一种折中性质的设计解决方案,多方面因素影响而达不到最佳效果
  • 一定程度上改变了网站原有的布局结构,会出现用户混淆的情况

弹性布局

1、浮动 + 百分比

.box {width: 100%;  border: 1px solid #000000;  padding: 10px;  }
aside {width: 30%; float: left;  background: red; padding: 10px; }
article { width: 65%;  float: left;  margin-left: 10px;  background: yellow; }

2、Flex 布局

Flex布局是在CSS3中引入的,被叫做“弹性盒模型”;该模型决定一个盒子在其他盒子中的分布方式以及如何处理可用的空间。

Flex布局功能

  • 在屏幕和浏览器窗口大小发生改变时,可以灵活的调整布局
  • 控制元素在页面的布局方向
  • 按照不同于DOM所指定排序方式对屏幕上的元素重新排序

Flex布局的优势

  • 可以让盒子里面的元素排在一行
  • 盒子里面的元素是高度相同

语法:

  display: flex; 

修改第一中方法:

.box {  display: flex;  border: 1px solid #000000;  }
aside { background: red;   padding: 10px;  }
article {  margin-left: 10px;   background: yellow;  }

常用属性:

属性说明
flex伸缩性
flex-direction伸缩流方向
flex-wrap伸缩换行
justify-content主轴对齐
align-items侧轴对齐

响应式布局的实现方式及应用

响应式网页设计(RWD,Responsive Web Design)由伊桑·马科特(Ethan Marcotte)提出,将三种已有的开发技术整合起来,并命名为响应式网页设计。

  • 弹性布局
  • 弹性图片
  • 媒体和媒体查询

媒体查询

使用媒体查询,先来学习一下三个属性:媒体类型、媒体特性和关键字。

1、媒体类型

设备类型
All所有设备
Braille盲人用点字法触觉回馈设备
Embossed盲人打印机
Handheld便携设备
Print打印用纸或打印预览视图
Projection各种投影设备
Screen电脑显示器
Speech语音或音频合成器
Tv电视机类型设备
Tty使用固定密度字母栅格的媒介,比如电传打字机和终端

常用的两种引入方式:

  • 以@media开头来表示这是一条媒体查询语句。
@media 媒体类型 {
        选择器{ /*样式代码写在这里…*/}
}
  • 或针对不同 stylesheets :
<link  rel="stylesheet"  href="style1.css"  media="媒体类型" />

2、媒体特性

属 性Min/Max描 述
device-widthLengthYes设置屏幕的输出宽度
device-heightLengthYes设置屏幕的输出高度
widthLengthYes渲染界面的宽度
heightLengthYes渲染界面的高度
OrientationPortrait/landscapeNo横屏或竖屏
Resolution分辨率(dpi/dpcm)Yes分辨率
Color整数Yes每种色彩的字节数
color-index整数Yes色彩表中的色彩数

3、关键字

  1. and:同时满足这两者时生效,到达限定范围
@media screen and (max-width:1200px){样式代码…}
  1. only:指定某种特定的媒体类型,可以用来排除不支持媒体查询的浏览器
<link   href = "style1.css"  media = " only screen and  (max-width:500px) "  />
  1. not:排除某种指定的媒体类型,即排除符合表达式的设备
@media  not  print  and (max-width:1200px){样式代码…}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值