CSS布局 浮动

74 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第16天,点击查看活动详情

结构伪类选择器

使用 结构伪类选择器 在HTML中选择元素

  1. 作用:根据元素在HTML中的结构关系查找元素
  2. 优势:减少对于HTML中类的依赖,有利于保持代码整洁

选择器:
E:first-child{} 匹配父元素中第一个子元素,并且是E元素
E:last-child{} 匹配父元素中最后一个子元素,并且是E元素
E:nth-child(n){} 匹配父元素中第n个子元素,并且是E元素
E:nth-last-child(n){} 匹配父元素中倒数第n个子元素,并且是E元素
n取值:
偶数:2n、even
奇数:2n+1、odd
找到前3个:-n+3
找到从第3个往后:n+3

伪元素

使用伪元素在网页中创建内容

  1. 元素:HTML设置的标签
  2. 伪元素:由CSS模拟出的标签效果

种类:
::before 在父元素内容的最前添加一个伪元素
::after 在父元素内容的最后添加一个伪元素

  1. 必须设置content属性才能生效
  2. 伪元素默认是行内元素

标准流

标准流:又称文档流,是浏览器在渲染显示网页内容时默认采用的一套排版规则,规定了应该以何种方式排列元素

  1. 块级元素:从上往下,垂直布局,独占一行
  2. 行内元素或行内块元素:从左往右,水平布局,空间不够自动折行

浮动

图文环绕、网页布局
属性名:float

取值:
left 左浮动
right 右浮动
特点:

  1. 浮动元素会脱离标准流(简称:脱标),在标准流中不占位置 • 相当于从地面飘到了空中
  2. 浮动元素比标准流高半个级别,可以覆盖标准流中的元素
  3. 浮动找浮动,下一个浮动元素会在上一个浮动元素后面左右浮动
  4. 浮动元素会受到上面元素边界的影响
  5. 浮动元素有特殊的显示效果:一行可以显示多个、可以设置宽高

浮动的元素不能通过text-align:center或者margin:0 auto,让浮动元素本身水平居中

清除浮动

清除浮动带来的影响: 如果子元素浮动了,此时子元素不能撑开标准流的块级父元素
原因:子元素浮动后脱标后不占位置
目的:需要父元素有高度,从而不影响其他网页元素的布局

方法:

  1. 直接设置父元素高度
    优点:简单粗暴,方便
    缺点:有些布局中不能固定父元素高度。如:新闻列表、京东推荐模块
  2. 额外标签法
    在父元素内容的最后添加一个块级元素
    给添加的块级元素设置 clear:both
    缺点:会在页面中添加额外的标签,会让页面的HTML结构变得复杂
  3. 单伪元素清除法
    用伪元素替代了额外标签
    优点:项目中使用,直接给标签加类即可清除浮动
  4. 双伪元素清除法
    优点:项目中使用,直接给标签加类即可清除浮动
  5. 给父元素设置overflow: hidden
    优点:方便

思考总结

不断的熟练思考总结,会使代码变的简练并规范;
我也在不断的学习css中,加油,多思考,多总结。