传统网页布局三种方式
|
能够说出为什么需要浮动 能够说出浮动的排列特性 能够说出3中最常见的布局方式 能够说出为什么需要清除浮动 能够写出至少2种清除浮动的方法 能够利用Photoshop实现基本的切图 能够利用Photoshop插件实现切图 能够完成学成在线的页面布局 |
浮动 常见网页布局 清除浮动 PS切图 学成在线案例
传统网页布局的三种方式 标准流(普通流、文档流) 浮动 定位 块级元素独占一行 div、hr、p、h1~h6、ul、ol、dl、form、table 行内元素会按照顺序,左到右顺序排列,父元素边缘则自动换行。 常见元素 : span、 a、 i、 em 等 标准流:就是由块级元素和行内元素按照默认规定的方式来排列,块级就是占一行,行内元素一行放好多个元素 以上都是标准流布局,标准流是最基本的布局方式
三种布局方式都是用来摆放盒子的,盒子摆放到合适位置,布局自然完成了。 实际开发中,一个页面基本包含三种布局方式 标准流、浮动、定位(后面移动端学习新的布局方式)
如何让多个块级盒子水平排列成一行?
display: inline-block; 标准流盒子之间会有间隙
浮动盒子之间没间隙 , 网页布局第一准则: 标准流管竖着排列, 浮动管横排列 如何实现两个盒子左右对齐?
为什么需要浮动? 有很多布局效果,标准流没有办法完成,此时可以利用浮动完成布局,因为浮动可以改变元素标签默认的排列方式 浮动最典型的应用,可以让多个块级元素一行内排列显示
浮动的特性(重难点) 1、浮动元素会脱离标准流 2、浮动的元素会一行内显示并且元素顶部对齐 3、浮动的元素会具有行内块元素的特性。
设置了浮动的元素最重要特性: 1、脱离标准普通流的控制(浮)移动到指定位置(动)(俗称脱标) 2、浮动的盒子不再保留原先的位置
浮动特性(重难点) 浮动元素会有行内块元素特性。 行内元素加了浮动也就具有了行内块元素
浮动元素经常和标准流父级搭配使用 为了约束浮动元素位置,我们网页布局一般采取的策略是: 先用标准流的父元素排列上下位置,之后内部子元素采取浮动排列左右位置。符合网页布局第一准则
网页布局第二准则: 先设置盒子大小,之后设置盒子的位置。
为什么清除浮动 由于 父级盒子很多情况下,不方便给高度,但是子盒子浮动又不占有位置,最后父级盒子高度为0时,就会影响下面的标准流盒子。
浮动元素不再占用原文档流的位置,所以它会对后面的元素排版产生影响。 清除浮动的本质 是清除浮动元素造成的影响 如果父盒子本身有高度,则不需要清除浮动 清除浮动之后,父级就会根据浮动的子盒子自动检测高度(孩子有多高 父级有多高)。父级有了高度,就不会影响下面的标准流了。
语法: 选择器{clear: 属性值;} // 属性值:left , right , both(主要); 清除浮动的策略是: 闭合浮动. 1、额外标签法也称为隔墙法,是W3C推荐的做法。 // 额外标签法会在最后一个浮动元素末尾添加一个空的标签 要求这个新的空标签必须是 块级元素
2、父级添加overflow属性 可以给父级加overflow属性,属性值设置为hidden(常用),auto 或scroll 在父元素里输入 overflow: hidden;
3、父级添加after伪属性 .clearfix:after {content: ""; display: block; height: 0; clear: both; visibility: hidden; } .clearfix{ *zoom: 1; //这个是为了照顾低版本浏览器 } 4、父级添加双伪元素 .clearfix:before, .clearfix:after{
额外标签法会在浮动元素末尾添加一个空的标签。
1、清除浮动本质是? 清除浮动的本质:是清除 浮动元素脱离标准流造成的影响 2、清除浮动策略是? 闭合浮动,只让浮动在父盒子内部影响,不影响父盒子外面的其他盒子。 //clear : both 3、额外标签法? 隔墙法,就是在最后一个浮动的子元素后面添加一个额外标签 添加 清除浮动样式。
伪元素清除浮动 .clearfix:after{ content: ""; //这个不懂 display: block; //盒子 height: 0; // 高度为0 clear: both; // visibility: hidden; // 不懂 }
为了提高网页制作效率。布局通常以下整体思路 1、确认页面的版心(可视区) 2、分析野蛮中的行模块,以及每个行模块中的列模块(先有行再有浮动的列)。 页面布局第一准则。 3、一行中的列模块经常浮动布局,确定每个列的大小 之后确定列的位置, 页面布局第二准则。 4、先有结构 后有样式
实际开发中,我们不会直接用链接a而是用 li 包含链接(li+a)的做法 1、如果直接用a,搜索引擎容易辨别为有堆砌关键字嫌疑(故意堆砌关键字容易被搜索引擎降权的风险)从而影响网站排名 |




.clear{clear:both;}
浙公网安备 33010602011771号