盒子模型、浮动、定位

简介: 盒子模型、浮动、定位

什么是标准流?


就是标签的排列顺序,在标准流中,


  • 块级元素:div,占一行
  • 行内元素:span,有多少占多少 ,上一个接下一个


7534d9cbbb236dc569333f289712443d.png


问:行内元素能变成块级元素吗?


<body>
    <div class="menu">栏目一</div>
    <span class="menu xian">栏目二</span>
    <span class="menu">栏目三</span>
    <span class="title">这是<span>一</span>条新闻标题</span>
</body>
.xian{
    display:block;
}


效果展示:


234169210f0e6edadb246db882fcdf94.png


盒子模型


每个标签就像一个盒子


d74d9142fca6f4c3a9987ecefda80af5.png


  • Margin(外边距) - 清除边框外的区域,外边距是透明的。
  • Border(边框) - 围绕在内边距和内容外的边框。
  • Padding(内边距) - 清除内容周围的区域,内边距是透明的。
  • Content(内容) - 盒子的内容,显示文本和图像。


实战


①、设置边框


<body>
    <div class="menu">栏目一</div>
    <span class="menu xian">栏目二</span>
    <span class="menu">栏目三</span>
    <span class="title">这是<span>一</span>条新闻标题</span>
</body>
.menu {
    /*第一种写法:单独设置样式*/
    border-width: 3px;
    border-color: red;
    border-style: solid;
    /*第二种写法:一起设置样式。注意:用空格隔开,不要用逗号*/
    border: 3px solid red;
}


效果展示:


caf03a3f789929408d87847514364ec8.png


②、设置页边距


问:如果两个标签同时设置了页边距,那这两个标签之间的页边距是它们的和吗?


32c8e24977de61cc6eb4430e33c5b3f4.png


<body>
    <div class="menu">栏目一</div>
    <span class="menu xian">栏目二</span>
    <span class="menu">栏目三</span>
    <span class="title">这是<span>一</span>条新闻标题</span>
</body>
.menu {
    border: 3px solid red;   //边框
    margin: 5px;              //页边距
}
.xian {
    display: block;
    margin-top: 30px;
}


结果:会选择最大的那个页边距


071411cba95d823bb2c9a25d7b36da9d.png


③、设置内容


width:60px;   //块宽度
height:100px;   //高度
line-height:50px;     //文字位置(让文本垂直居中)


效果展示:


f9c5a27ee6f93b87a09638cf13840cad.png


浮动:float


<body>
    <div class="menu">栏目一</div>
    <div class="menu xian">栏目二</div>
    <div class="menu">栏目三</div>
    <div class="title">这是<span>一</span>条新闻标题</div>
</body>
.menu {
    border: 3px solid red;
    float: left;     //添加左浮动
    //clear:left(清除浮动)
}


展示效果:


884be380e92446f072f42c1aac1bddb9.png


定位:position


position 属性的五个值:


  • static:没有定位,遵循正常的文档流对象
  • relative:相对定位,相对于原来的位置偏离了多少
  • fixed:元素的位置相对于浏览器窗口是固定位置。
  • absolute:绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于<html>
  • sticky:定位的元素和其他元素重叠


相对定位:


8829a296e1734c50313a33fe4d9592cf.png

相关文章
|
9月前
|
前端开发
CSS布局:浮动 (结构伪类选择器、伪元素、标准流、浮动、清除浮动)
CSS布局:浮动 (结构伪类选择器、伪元素、标准流、浮动、清除浮动)
49 0
|
20天前
|
前端开发 容器
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影(一)
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影一
27 0
|
20天前
|
前端开发
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影二
Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影二
20 0
|
1月前
|
前端开发 容器
css样式元素的相对定位,绝对定位,固定定位等元素定位运用技巧详解
css样式元素的相对定位,绝对定位,固定定位等元素定位运用技巧详解
|
1月前
浮动和定位
浮动和定位
|
前端开发
|
前端开发
CSS高度塌陷问题及清除浮动的三种方式
在父元素最后增加一个空的块级子元素,并且让它设置clear: both
130 0
|
前端开发
CSS常用定位方法(绝对定位、相对定位、固定定位)
CSS常用定位方法(绝对定位、相对定位、固定定位)
CSS常用定位方法(绝对定位、相对定位、固定定位)