响应式布局的基本介绍及原理

响应式布局的介绍

响应式布局(respond layout)是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端(pc、手机、平板)

什么是响应式布局

早期:

同一个页面需要开发不同设备的版本,公司开发成本较高

  • pc端需要开发写一套页面,专门给pc端看
  • 移动端再开发一套页面,专门给移动端看

响应式布局:

同一个页面只需要开发一套网页,公司开发成本较低

  • 只需要写一套代码,同时给pc端和移动端看

响应式开发的原理

动态根据当前屏幕的宽度,自动改变页面中盒子的宽度、盒子的显示或隐藏

响应式开发的优缺点

优点:

  • 对于不同设备只需要开发一套网页即可,公司开发成本较低
  • 一套网页可以适配多个终端

缺点:

  • 一个页面需要兼容多个终端,考虑的情况多种,开发效率较慢
  • 代码会更多,网页的加载速度较慢

响应式开发与pc+移动开发的比较

分类pc端+移动端网页开发响应式开发
应用场景已有pc端网页,只需要再开发一套移动端网页即可对于新建网页,可以使用响应式写一套兼容多个设备即可
开发效率针对性强,开发效率高需要兼容各种终端,考虑情况更多,开发效率低
适配情况只能适配移动端或者PC端,其他设备(平板)体验较差可以适配各种终端
加载速度代码简洁,加载快代码相对复杂,加载慢

响应式开发的屏幕分类

在响应式开发中需要动态根据屏幕的宽度改变样式,但是不可能每变化1px就改变样式。

在响应式开发中,把各种屏幕宽度分为四大类!!

设备屏幕的分类

分类名称响应式开发
超小屏设备0 ~ 768px
小屏设备768px ~ 992px
中屏设备992px ~ 1200px
大屏设备1200px ~ 正无穷

在这里插入图片描述

媒体查询

刚刚说了响应式原理是:动态根据当前屏幕的宽度,自动改变页面中盒子的宽度、盒子的显示或隐藏

所以需要根据不同屏幕的宽度改变样式。

可以通过css3中新增的媒体查询完成效果。

媒体查询(Media Query):是CSS3新增的方法,可以通过动态查询屏幕的宽度,根据不同的屏幕宽度设置样式是否生效!!

语法:

@media screen and (条件) {
    选择器......
}

作用: 只有当屏幕宽度满足条件时,媒体查询中的选择器才能生效!!!

注意点: 媒体查询仅仅只是控制选择器是否生效,不会提升选择器的优先级!!

具体谁说了算,还是需要看优先级

条件:

  • min-width:样式生效的屏幕最小宽度

    只有当屏幕宽度大于等于该宽度时,样式才会生效

/* 样式生效的最小宽为600px——》只有当屏幕宽度大于等于600px时,样式才会生效!!*/
@media screen and (min-width:600px) {
    div {
        width: 400px;
        height: 400px;
        background-color: green;
    }
}
  • max-width :样式生效的屏幕最大宽度

    只有当屏幕宽度小于等于该宽度时,样式才会生效

/* 样式生效的最大宽为800px——》只有当屏幕宽度小于等于800px时,样式才会生效*/
@media screen and (max-width:800px) {
    div {
        width: 400px;
        height: 400px;
        background-color: blue;
    }
}
  • width :样式生效的宽度

    只有当屏幕宽度正好等于该宽度时,样式才会生效

/* 样式只在700px宽度的时候才会生效 */
@media screen and (width:700px) {
    div {
        width: 400px;
        height: 400px;
        background-color: purple;
    }
}

一个媒体查询中可以同时写多个条件,中间通过and连接即可

/* 样式在 600~800中间生效 */
@media screen and (min-width:600px) and (max-width:800px) {
    div {
        width: 400px;
        height: 400px;
        background-color: orange;
    }
}

以上就是响应式布局的原理,当然在实际开发者一般会使用如:bootstrap的响应式框架。

  • 7
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值