Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影二

简介: Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影二

Web网页制作-知识点(4)——CSS盒子模型、弹性盒模型(flex box)、文档流、浮动、清除浮动、定位、圆角、阴影一:https://developer.aliyun.com/article/1531002

overflow清除浮动

如果有父级塌陷,并且同级元素也收到了影响,可以使用overflow清除浮动。

这种情况下,父布局不能设置高度。

<head>
<style>
  .container{
    border:1px solid red;
    width:350px;
    overflow:hidden;
    clear:both;
  }
  .box{
    width:100px;
    height:100px;
    background-color:#fff176;
    float:left;
    margin:5px;
  }
  .nav{
    width:100px;
    height:100px;
    background-color:red;
  }
</style>
</head>
 
<body>
  <div class="container">
      <div class="box"></div>
        <div class="box"></div>
        <div class="box"></div>
    </div>
    <div class="nav"></div>
</body>

伪对象方式

如果有父级塌陷,并且同级元素也收到了影响,还可以使用伪对象方式处理,为父标签添加伪类after,设置空的内容,并使用clear:both;这种情况下,父布局也不能设置高度。

<head>
<style>
  .container{
    border:1px solid red;
    width:350px;
  }
  .container::after{
    content:"";
    display:block;
    clear:both;
  }
  .box{
    width:100px;
    height:100px;
    background-color:#fff176;
    float:left;
    margin:5px;
  }
  .nav{
    width:100px;
    height:100px;
    background-color:red;
  }
</style>
</head>
 
<body>
  <div class="container">
      <div class="box"></div>
        <div class="box"></div>
        <div class="box"></div>
    </div>
    <div class="nav"></div>
</body>

定位

定义

position属性指定了元素的定位类型。

描述
relative 相对定位
absolute 绝对定位
fixed 固定定位
sticky 黏性定位

其中,绝对定位、固定定位和黏性定位会脱离文档流。

设置定位之后,可以使用四个方向值进行调整位置:left、top、right、bottom。

相对定位

相对于默认位置进行偏移,即定位基点是元素的默认位置。

<head>
<style>
  .box{
    width:200px;
    height:200px;
    background-color:red;
    position:relative;
    left:100px;
  }
</style>
</head>
 
<body>
  <div class="box"></div>
</body>

绝对定位

absolute相对于上级元素(一般是父元素)进行偏移,有一个很重要的限制条件:定位基点不能是static定位(static是position属性的默认值,每个块元素占据自己的区块,元素之间互不重叠),否则定位基点就会变成整个网页的根元素html。

换句话说,absolute要在父元素设置了relative(除了static)的情况下才能使用(“子绝父相”)。

<head>
<style>
  .box1{
    width:200px;
    height:200px;
    background-color:red;
    position:absolute;
    left:50px;
  }
  .box2{
    width:300px;
    height:300px;
    background-color:green;
  }
  .box{
    width:500px;
    height:500px;
    background-color:#F0F;
    position:relative;
    left:100px;
  }
</style>
</head>
 
<body>
  <div class="box">
      <div class="box1"></div>
      <div class="box2"></div>
    </div>
</body>

固定定位

相对于视口(浏览器窗口)进行偏移,基点是浏览器窗口,且不会随着窗口滚动而变化。

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
  .box1{
    width:200px;
    height:200px;
    background-color:red;
    position:fixed;
    left:50px;
  }
  .box2{
    width:300px;
    height:300px;
    background-color:green;
  }
  h3{
    line-height:500px;
  }
</style>
</head>
 
<body>
      <div class="box1"></div>
      <div class="box2"></div>
        <h3>6</h3>
        <h3>6</h3>
        <h3>6</h3>
        <h3>6</h3>
        <h3>6</h3>
</body>

不随滚动而移动,固定在浏览器窗口中。

注意:设置定位之后,相对定位和绝对定位是相对于具有定位的父级元素进行位置调整,如果父级元素不存在定位,则继续向上逐级寻找,直到顶层文档。这就是前面为什么说absolute的定位基点不能是static定位。


黏性定位

相对于视口进行黏性固定,当属性到黏性定位所在位置时就会黏住固定。(此时相当于固定定位的效果)与固定定位不同的是,黏性定位要先到指定的位置再固定,而固定定位一开始就固定。

Z-index

z-index属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面。(比较权重的大小,权重大的在顶层。)

<head>
<style>
  .box1{
    width:200px;
    height:200px;
    background-color:red;
    position:absolute;
    z-index:2;
  }
  .box2{
    width:300px;
    height:300px;
    background-color:green;
    position:absolute;
    z-index:1;
  }
</style>
</head>
 
<body>
      <div class="box1"></div>
      <div class="box2"></div>
</body>

CSS3新特性

圆角

使用CSS3border-radius属性,你可以给任何元素制作“圆角”。

border-radius属性,可以使用以下规则:

  1. 四个值:第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下角
  2. 三个值:第一个值为左上角,第二个值为右上角和左下角,第三个值为右下角
  3. 两个值:第一个值为左上角和右下角,第二个值为右上角与左下角
  4. 一个值:四个圆角值相同
<head>
<style>
  div{
    margin:10px;
  }
  .box1{
    width:200px;
    height:150px;
    background-color:#8AC007;
    padding:20px;
    border-radius:15px 50px 30px 5px;
  }
  .box2{
    width:200px;
    height:150px;
    background-color:#8AC007;
    padding:20px;
    border-radius:15px 50px 30px;
  }
  .box3{
    /*50%与100%的效果一致*/
    border-radius:50%; 
    background:#8AC007;
    padding:20px;
    width:200px;
    height:150px;
  }
</style>
</head>
 
<body>
      <div class="box1"></div>
      <div class="box2"></div>
        <div class="box3"></div>
</body>

阴影

box-shadow向框添加一个或多个阴影。

box-shadow:h-shadow v-shadow blur color;
描述
h-shadow 必选,水平阴影的位置
v-shadow 必选,垂直阴影的位置
blur 可选,模糊距离
color 可选,阴影的颜色
<head>
<style>
  .box{
    width:200px;
    height:200px;
    background-color:#8ac007;
    margin:50px;
    box-shadow:10px 10px green;
  }
</style>
</head>
 
<body>
      <div class="box"></div>
</body>

给阴影加模糊效果

<head>
<style>
  .box{
    width:200px;
    height:200px;
    background-color:#8ac007;
    margin:50px;
    box-shadow:10px 10px 5px green;
  }
</style>
</head>
 
<body>
      <div class="box"></div>
</body>

三个方向的阴影效果

<head>
<style>
  .box{
    width:200px;
    height:200px;
    background-color:#8ac007;
    margin:50px;
    box-shadow:0 10px 30px rgb(0,0,0,.5);
  }
</style>
</head>
 
<body>
      <div class="box"></div>
</body>

目录
相关文章
|
6月前
|
前端开发 算法 Java
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
214 1
|
6月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
Flex 布局 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。 一、Flex 布局是什么? Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
439 0
|
前端开发
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
867 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
238 5
|
数据可视化 前端开发 搜索推荐
FLEX组件可视化设计器CSS3代码生成器
FLEX组件可视化设计器CSS3代码生成器
252 4
|
存储 前端开发 安全
详解CSS之Web 字体
详解CSS之Web 字体
244 4
|
前端开发
|
前端开发 开发者 容器
CSS3:flex&box-sizing
本文介绍了CSS中的Flex布局及其相关属性,如`flex-direction`、`flex-wrap`、`justify-content`等,并通过代码示例展示了如何使用这些属性来控制容器内的项目排列方式。同时,还讲解了`align-items`属性用于定义子元素在交叉轴上的对齐方式,以及`box-sizing`属性的不同取值对元素尺寸计算的影响。
213 0
|
前端开发
CSS属性: 阴影 轮廓 渐变
注: 本文摘自 宁静致远 - CSDN / 但愿人长久 千里共婵娟 - CSDN 阴影 使用box-shadow属性可以为元素添加阴影效果, 比如 box-shadow: h-shadow v-shadow blur spread color i...
2707 0
下一篇
开通oss服务