| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> 响应式web开发 -> 正文阅读 |
|
[开发工具]响应式web开发 |
????????????????????????????????????????响应式web开发概述(什么是响应式)响应式设计的页面会根据用户的的行为以及设备的环境(系统平台、屏幕尺寸、屏幕定向等)进行相应的响应和调整。 此概念于2010年5月由国外著名网页设计师Ethan Marcotte(伊森·马科特)所提出意在实现不同屏幕分辨率的终端上浏览网页的不同展示方式。 具体的实践方式由多方面组成,包括弹性盒、弹性网格布局、响应式图片、CSS media query的使用等。 ? 背景:移动互联网的发展,为了满足移动互联网多终端显示的需求 催生了响应式式布局的诞生, 目的:响应式网页设计就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这样就可以不必为不断到来的新设备做专门的版本设计和开发了。 初识响应式:响应式站点演示:https://segmentfault.com/ 响应式开发原理(实现步骤)1、设置 viewport<meta name="viewport" content="width=device-width, initial-scale=1.0"> 2 、创建流式布局响应式在设计和布局初期就要考虑页面如何在多终端展示,因此需要根据页面效果分析创建方便后续处理版式变化的流式布局,主要包括以下几个方面。 2.1 模块处理 对页面进行响应式的设计实现,需要对相同内容进行不同宽度的布局设计,有两种方式:桌面优先(从桌面端开始向下设计);移动优先(从移动端向上设计); 无论基于那种模式的设计,要兼容所有设备,布局响应时不可避免地需要对模块布局做一些变化,常见的情形如下: 模块中内容:挤压-拉伸; 模块中内容:换行-平铺; l 模块中内容:删减-增加; | 模块位置的变化 其中涉及到的布局技巧的应用 如:尽量少使用绝对宽度、百分比布局、弹性盒、弹性网格、浮动技巧、定位技巧的应用、box-sizing,显示隐藏(display:block,display:none,overflow:hidden)的应用 2.2 图片 1.内容图片响应 在html页面中的图片,比如文章里插入的图片我们都可以通过css样式使用百分比,来进行控制图片缩放: #wrap img{ width:100%; } 以上代码将强制图像占据其父元素空间的100%,当父元素宽度改变时图像元素也会相应改变,而高度默认为auto,图像自身宽高比例不会发生变化 #wrap img{ max-width:100%; ? } 以上代码将实现父元素宽度小于图像本身宽度时,图像跟随父元素改变,当父元素宽度大于图片时,图片宽度以自身本身宽度显示 2.背景图片处理 除了img标签的图片外我们经常会遇到背景图片,比如logo为背景图片: #logo a{ ? display:block; ? ? width:100%; ? ? height:40px; ? ? text-indent:55rem; ? ? background-img:url(logo.png); ? ? background-repeat:no-repeat; ? ? background-size:100% 100%; ? ? ? background-size:100% auto; ? ? background-size:auto 100%; ? ? } background-size属性值设置为百分比值或cover,contain等,将实现背景图片的大小跟随元素大小响应变化。 2.3.文字内容 相对单位在字号、行高中的应用可以一定程度上提升效率精简代码 @media screen and (orientation:landscape){ ? ? .box{ ? ? font-size:20px; ? ? line-height:30px; ? } ? ? .box h2{ ? ? font-size:40px; ? ? line-height:60px; ? ? } } @media screen and (orientation:portrait){ ? ? .box{ ? ? ? font-size:12px; ? ? ? line-height:24px; ? ? } ? ? .box h2{ ? ? ? font-size:24px; ? ? ? line-height:36px; ? } ? } 改写后代码一定程度上得到精简,方便适配 @media screen and (orientation:landscape){ ? ? ? .box{ ? ? font-size:20px; ? ? line-height:1.5; ? } ? ? .box h2{ ? ? font-size:2em; ? ? } ? } ? @media screen and (orientation:portrait){ .box{ font-size:12px; } ? } 3、屏幕区间设定(断点设置—版式发生变化区间)使用@Media查询来设置不同屏幕区间的样式,这是响应式布局的核心 对于@Media查询的分界点,这个可以根据自己的项目来调整,设置合适自己项目的布局分界点。在设置分界点时,要注意先后顺序,当使用max-width数值大的在前面,数值小的在后面;当使用min-width时,数值小的放前面,数值大的放后面。 下面列出了在项目开发时设置的布局分界点参考: 移动端优先:(优先保证移动端显示效果) /*超小型设备(手机,768px以下)*/ ? @media screen and (min-width:768px) { ... } /* 小型设备(平板电脑,768px 以上) */ ? @media screen and (min-width:992px){ ... }/* 中型设备(台式电脑,992px 以上) */ ? @media screen and (min-width:1200px){ ... }/* 大型设备(大台式电脑,1200px 以上) */ pc优先:(优先保证PC端显示效果) /* 大型设备(大台式电脑,1200px 以上) */ @media screen and (max-width:1200px) { ... } /* 中型设备(台式电脑,1200px 以下) */ @media screen and (max-width:992px){ ... }/* 小型设备(平板电脑,992px 以下) */ @media screen and (max-width:768px){ ... }/* 超小型设备(手机,768px 以下) */ 响应式项目项目介绍
项目搭建
响应式布局优缺点优点
缺点
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/22 13:00:52- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |