一、盒子模型

1、盒模型概念

  • 在模型中,规定了元素内容、内边距、边框和外边框
  • 最内是内容,包围内容的是内边距,内边距的边缘是边框
  • 边框以外是外边距,外边距默认是透明的

2、边框

1.1、边框border

语法:

border:width style color;

边框样式为必填项,分为:

样式取值 含义
solid 实线边框
dotted 点线边框
hashed 虚线边框
double 双线边框

1.2、单边框border-xx

分别设置某一方向的边框,取值:width style color

属性 作用
border-top 设置上边框
border-bottom 设置下边框
border-left 设置左边框
border-right 设置右边框

实例:制作一个三角标(元素高、宽为0,保留左边框,将上、中、下边框颜色置为透明):

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#test{width: 0px;height: 0px;margin: 0 auto;border-left: 50px solid orange;border-top: 50px solid transparent;border-right: 50px solid transparent;border-bottom: 50px solid transparent;}</style>
</head>
<body><div id="test"></div>
</body>
</html>

1.4、圆角边框border-radius

  • 属性:border-radius 指定圆角半径
  • 取值:像素值或百分比
  • 取值规律
    • 一个值 表示统一设置上右下左
    • 四个值 表示分别设置上右下左
    • 两个值 表示分别设置上下 左右
    • 三个值 表示分别设置上右下,左右保持一致

实例:绘制一个圆:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#test{width: 100px;height: 100px;background-color: red;margin: 0 auto;border: 2px solid blue;border-radius: 50%;}</style>
</head>
<body><div id="test"></div>
</body>
</html>

1.5、轮廓线outline

  • 属性:outline
  • 取值:width style color
  • 区别:边框实际占位,轮廓不占位
  • 特殊:取值none可以取消文本输入框默认轮廓线

1.6、盒阴影box-shadow

  • 属性:box-shadow

  • 取值:h-shadow v-shadow blur spread color;

    h-shadow        取像素值,阴影的水平偏移距离
    v-shadow        取像素值,阴影的垂直偏移距离
    blur            取像素值,表示阴影的模糊程度,值越大越模糊
    spread          选填,取像素值,阴影的尺寸
    color           设置阴影颜色,默认为黑色
    

示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#test{width: 100px;height: 100px;background-color: red;margin: 0 auto;border-radius: 5px;box-shadow: 5px 5px 8px #777;}</style>
</head>
<body><div id="test"></div>
</body>
</html>

效果如下:

3、内边距

  • 属性:padding

  • 作用:调整元素内容框与边框之间的距离

  • 取值:单位为px或百分比,不允许使用负值

    20px;                       一个值表示统一设置上右下左
    20px 30px;                  两个值表示分别设置上下 左右
    20px 30px 40px;             三个值表示分别设置上右下,左右保持一致
    20px 30px 40px 50px;        四个值表示分别设置上右下左
    
  • 单方向内边距,只能取一个值:

    padding-top
    padding-right
    padding-bottom
    padding-left
    

4、外边距

  • 属性:margin

  • 作用:调整元素与元素之间的距离

  • 特殊:

    • margin:0; 取消默认外边距
    • margin:0 auto; 左右自动外边距,实现元素在父元素范围内水平居中
    • margin:-10px; 元素位置的微调
  • 单方向外边距:只取一个值

    margin-top
    margin-right
    margin-bottom
    margin-left
    
  • 外边距合并

    • 垂直相遇

      • 元素之间同时设置垂直方向的外边距,最终取较大的值包含合并,如:

        <!DOCTYPE html>
        <html lang="en">
        <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#test1{margin: 0 auto;height: 100px;width: 100px;background-color: blue;border:1px solid black;margin-bottom: 100px;}#test2{margin: 0 auto;height: 100px;width: 100px;border:1px solid black;background-color: red;margin-top: 80px;}</style>
        </head>
        <body><div id="test1"></div><div id="test2"></div>
        </body>
        </html>
        

        运行结果如下:

      • 当一个元素包含在另一个元素中时,他们的上和包含上/或下和包含下外边距也会发生合并,最终的外边距取较大的值。

        包含时,要想让合并后的间距生效,可以给外层元素加一个边框,1px即可

        示例代码:

        未给外层元素加边框时的合并:

        <!DOCTYPE html>
        <html lang="en">
        <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#test1{margin: 0 auto;height: 300px;width: 300px;background-color: blue;margin-top: 100px;      }#test2{height: 100px;width: 100px;background-color: red;margin-top: 100px;}</style>
        </head>
        <body><div id="test1"><div id="test2"></div></div></body>
        </html>
        

      结果如下:最终的margin取较大值(100px)

      给外层元素加上边框后,即#test1修改如下:

      #test1{margin: 0 auto;height: 300px;width: 300px;background-color: blue;border: 1px solid black;margin-top: 100px;
      }
      

      运行结果如下:

5、元素最终尺寸(宽/高)

  • 最终宽度=width+(padding+border+margin)*2
  • 最终高度=height+(padding+border+margin)*2

二、页面布局

默认布局方式,按照代码书写顺序及标签类型从上到下,从左到右依次显示

1、浮动布局

主要用于设置块元素的水平排列

  • 属性:

    float
    
  • 取值

    float:left/right
    
  • 特点

    • 元素设置浮动会从原始位置脱流,向左或向右依次停靠在其他元素边缘,在文档中不再占位
    • 元素设置浮动,就具有块元素的特征,可手动调整宽高
    • 文字环绕:浮动元素遮挡正常元素的位置,无法遮挡正常内容的显示,内容围绕在浮动元素周围显示
  • 问题:

    子元素全部设置浮动,导致父元素高度为0,影响父元素背景色和背景图片展示,影响页面布局。

  • 解决:

    • 对于内容固定的元素,如果子元素都浮动,可以给父元素固定的高度(如导航栏)
    • 为父元素设置overflow属性,解决高度0:overflow:hidden;(常用)

2、定位布局

定位布局共3种方式,分别时相对定位relative、绝对定位absolute和fixed。

设置方法:

position:relative
position:absolute
position:fixed

2.1、相对定位

参照元素在文档中的原始位置偏移,不脱离文档流,常用于配合绝对定位使用

2.2、绝对定位

参照已定位的最近的祖先元素进行便宜,脱离文档流。一般是父元素使用相对定位,子元素使用绝对定位。

2.3、固定定位

参照窗口定位,位置固定,脱离文档流。

当元素发生堆叠时,按如下规则显示:

  • 定位元素和未定位元素发生堆叠,已定位元素在上

  • 定位元素和定位元素发生堆叠,按html书写顺序,后写的在上

  • 可使用z-index调整显示位置,默认值为1值越大元素越靠上,如:

    z-index: 1000;
    

【前端基础】盒子模型和页面布局总结相关推荐

  1. 04-前端技术_盒子模型与页面布局

    目录 三,盒子模型与页面布局 1,网页布局介绍 1.1 固定布局 1.2 流式布局(Liquid Layout) 1.3 栅格化布局 1.4 自适应布局(Adaptive Layout) 1.5 响应 ...

  2. CSS盒子模型与页面布局

    202209 week1 day5~day6 前端学习 1 盒子模型 1.1 盒子模型结构 1.1.1 内容 1.1.2 边界(margin) 1.1.3填充(padding) 1.1.4 边框(bo ...

  3. 初识HTML(五)进阶:CSS盒子模型、页面布局

    目录 CSS 盒子模型(Box Model) 页面布局 浮动流 制作导航栏 如何页面布局 定位流 relative相对定位 absolute绝对定位 fixed固定定位 CSS 盒子模型(Box Mo ...

  4. 【CSS基础】盒子模型、浮动布局、ps切图、定位及一些零碎知识点

    该系列文章是博主学习前端入门课程的笔记,同时也为了方便查阅,有任何问题都欢迎在评论区提出.本文主要介绍CSS基础知识,包括盒子模型.浮动布局.PS切图.定位.元素的显示与隐藏和一些零碎知识点 思维导图 ...

  5. week3--CSS基础 盒子模型 选择器

    CSS基础 && 盒子模型 && 选择器 今天下午 我是V神 但是此时此刻 CSS 你是我的神 CSS基础 && 盒子模型 && 选择器 ...

  6. 咸鱼前端—CSS盒子模型

    咸鱼前端-CSS盒子模型 盒子模型 盒子边框(border) 圆角边框(CSS3) 内边距(padding) 外边距(margin) 盒子阴影 盒子模型 所谓盒子模型就是把HTML页面中的元素看作是一 ...

  7. html文件div盒子浮动,css基础03-盒模型、网站布局思想、浮动以及浮动带来的影响...

    定义: 在CSS处理页面的时候,它认为每个元素都是包含在一个不可见的盒子里,盒子模型由内容区域.内容区域周围空间(内边距padding).内边距的外边缘(边框,border)和边框外面将元素与相邻元素 ...

  8. 了解CSS盒模型、页面布局在UI设计中的作用

    我司实行UI规范已过去一段时间,页面风格已逐渐实现统一.但近期在实际业务开发中发现,在UI验收环节不断出现小数值调整情况,极大的延长验收时间. 在和UI设计人员探讨后发现设计者对前端盒模型概念不甚了解 ...

  9. CSS基础——盒子模型【学习笔记】

    盒子模型(Box Model) 所谓盒子模型: 就是把HTML页面中的布局元素看作是一个矩形的盒子,也就是一个盛装内容的容器. 盒子模型有元素的内容.边框(border).内边距(padding).和 ...

最新文章

  1. 【论文相关】 技术性论文结构剖析
  2. PHP 5.6 开启CURL HTTPS 类型
  3. [文摘20090203]手机基本知识
  4. window环境搭建go语言运行环境
  5. java for循环返回值_JAVA——for循环
  6. 【微软2014实习生及秋令营技术类职位在线測试】题目1 : String reorder
  7. matlab量化股票基本面,获取数据 - MATLAB - 掘金量化
  8. R语言ggplot2可视化在轴标签、轴标题中添加大于号、等于号等实战
  9. 一本通 3.1 例 1」黑暗城堡
  10. 计算机专业本科毕业论文字数要求,计算机科学与技术专业本科毕业设计论文要求...
  11. html弹窗广告文件怎么做,视频加入广告 如何在视频文件中加入弹窗广告
  12. java怎么无参构造方法_Java中如何在无参构造方法中调用有参构造?
  13. 【转】专家推荐 13个优秀的UML建模工具软件
  14. 多模态机器学习简述(Guide to Multimodal Machine Learning)
  15. 如何判别lib文件是静态库还是动态库的导入文件呢
  16. 有什么软件可以免费压缩图片?
  17. 小米redmibook14系统重装、c盘分区以及rdo远程方法
  18. [绝对原创] AKM项目轶事之FLYBACK飞机晚点索赔
  19. 简单文件数据库-模拟图书馆管理系统
  20. 腾讯云:从“互联网+”到“智能+”,从连接人到连接各行各业

热门文章

  1. html编辑器的值+dede,dedecms升级ckeditor为ueditor编辑器,详细修改方法和步骤
  2. 计算机操作系统选择题
  3. 用友加密服务器修改密码,用户密码怎么修改?
  4. 第 256 场力扣周赛(状态压缩+dp,二进制子序列的动规、940)
  5. 【PTA】谷歌的招聘(C语言)
  6. Polynomial类 多项式
  7. 37.某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分放在记录的ave成员中。请自己定义正确的形参。
  8. 盒须图(Boxplot)
  9. 【高等数学】-积分再现公式
  10. 40本编程开发电子书免费送