前端学习实践3 | 青训营

102 阅读3分钟

基本网络布局

页面布局三大核心:盒子模型,浮动和定位

网页布局第一准则:多个块级元素纵向排列找标准流,

多个块级元素横向排列找浮动。

  • 先用标准流的父元素管上下,用内部子元素浮动管左右

一、盒子模型

image.png

1.边框border 会影响盒子大小

1)边框粗细border-width:5px;
2)边框样式border-style:solid;

image.png

3)边框颜色border-color:pink;
4)边框复合写法 border:1px solid red;没有顺序
5)边框分开写 border-top:5px dashed purple;
6)边框合并boder-collapse:collapse;合并相邻边框
7)圆角边框 boder-radius:10px;或百分比也可
8)圆形 半径为宽一半
div {
    width: 200px;
    height: 200px;
    border-radius: 50%;或100px
    border: 1px solid red;
}

9)可以设置不同圆角 顺时针左上开始

2.内边距 padding-top 会影响盒子大小

1)内边距 padding-top:20px;
2)内边框复合写法 2 上下 左右 3上 左右 下 4上 右 下 左 顺时针
3)盒子没有指定width/height属性,则padding不会撑开盒子大小

3.外边距margin 盒子与盒子的距离 2 上下 左右 3上 左右 下 4上 右 下 左 顺时针

4.盒子水平居中 外边距auto 但是必须指定宽度

1)盒子必须指定宽度width

2)盒子左右外边距为auto

5.外边距合并 加边框 加内边距 加overflow:hidden

  • 合并容易造成塌陷

解决方法

image.png

6.清除默认内外边距margin: 0; padding: 0;

* {
        margin: 0;
        padding: 0;
    }

7.行内元素尽量不设置上下边距,只设置左右内外边距

  • 块和行内块就可以

8.盒子阴影 box-shadow:

  • 默认外阴影,但是不可以写出来,写出来无效

  • 影子不占空间

  • 鼠标经过生成阴影

image.png

二、浮动 float:left

1.浮动 float: left;

2.浮动特征

1)脱标 不保留位置
2)多盒子设置浮动,一行内显示,顶端对齐,无缝隙,装不下另起一行
3)浮动元素具有行内块元素特点
4)浮动的盒子只会影响后面的标准流,不会影响前面的标准流
  • 第一个盒子标准流,第二个浮动,第三个标准

3.清除浮动 clear:both;

image.png

  • 清除浮动的本质就是清除浮动造成的影响
  • 父盒子有高度就就不用清除浮动
  • 清除高度后,父级根据浮动的子盒子自己检测高度,父级有高度后,就不会影响标准流了。

选择器{clear:属性值;}

  • 闭合浮动就是孩子在自己家闹,出不去。

清除浮动三种方法

1)额外标签法 clear:both

image.png

*注意:新增盒子必须是块级元素,不能行内

  • 优点:通俗易懂,书写方便
  • 缺点:添加许多无意义标签,结构化较差
2)父级添加overflow:hidden;
  • 属性值设置为hidden、auto或scroll
  • 子不教父之过,切记给父元素加代码
  • 缺点:无法显示溢出的部分
3)伪元素法 :after 给父级加
  • 缺点:照顾低版本浏览器
4)双伪元素 给父元素加
  • 前后插盒子,形成闭合
.clearfix:before,.clearfix:after {
    content:"";
    display:table; 
  }
  .clearfix:after {
    clear:both;
  }
  .clearfix {
     *zoom:1;
  }   
  • 缺点:照顾低版本浏览器