zoukankan      html  css  js  c++  java
  • 边框盒子模型

    一、 什么是边框?

    ---边框就是环绕在标签宽度和高度周围的线条

    • 边框属性的格式?
      1、连写(同时设置四条边的边框)
      border:边框宽度 边框样式 边框颜色;
    • 样式取值
      --solid:实线
      --dotted:点线
      --dashed虚线
    • 快捷键
      bd+tab
    • 注意点:
      1)连写格式中颜色可以省,省略后默认就是黑色
      2)连写格式样式不能省略,省略之后就看不到边框了
      3) 连写格式中宽度可以省略,省略之后黑色可以看到边框
      2、连写(分别设置四条边的边框)
      borde-top/right/bottom/left:边框宽度 边框样式 边框颜色;
    • 快捷键:
      bt+tab
    • 连写(分别设置四条边的边框)
    borde-上 右  下 左;
    borde-style:上 右  下 左;
    borde-color:上 右  下 左;

    注意点:
    这三个属性的取值是按照顺时针来赋值的,也就是按照上右下左来赋值,额不是按照日常生活中的上下左右
    这三个属性的取值省略时规律
    --上右下左-->上右下》左边的取值和右边一样
    --上右下左-->上右》左边的取值和右边一样,下和上一样
    --上右下左-->上》右下左都和上一样

    二、什么是内边距?

    ---边框和内容之间的距离就是内边距?

    • 格式:
      padding:上 右 下 左;
      padding-top/right/left/bottom:像素;
    • 注意点:
      1)给标签设置内边距之后,标签占有的宽度和高度会发生变化
      2)内边距也会有颜色变化

    三、外边距

    • 什么是外边距?
      --外边距就是标签与标签之间的外边距
      --在·HTML中多个空格会被当做一个空格处理,回车也会被当作空格处理
    • 格式:
      margin:10px 10px 10px 1opx;上右下左;
      margin: 10px 100px 19px;上10 右左100 下19
      margin-top/right/bottom/left:像素;
      ---省略上等于下 左等于右
    • 注意点:
      1)外边距没有颜色
      ----外边距的合并现象?
    • 产生原因:在我们垂直方向上,如果有两个相邻外边距,那么就会发生外边距合并现象。
      1)水平是叠加
      2)在默认布局的垂直方向上,默认情况下外边距是不会叠加的,会出现合并现象,谁的外边距大就听谁的
    • 注意:外边距只会发生在垂直方向上,不会发生在水平方向上

    四、盒子模型

    • 什么是盒子模型?
      --css盒子模型仅仅是一个比喻,HTML中所有的标签都是盒子
      --就是在HTML中所有标签都可以设置
      宽度/高度:指可以存放内容的区域
      内边距:内容与边框的距离-填充物
      边框:==手机盒子自己
      外边距--盒子与盒子之间的距离
    • 盒子宽度和高度
      --1、内容的宽度和高度
      就是通过标签的width/height属性设置的宽度和高度
      --2、元素的宽度和高度
      宽度=左边框+width+右内边距+右边框
      高度一样
      --3、元素空间的宽度和高度
      宽度=左外边距+左边框+做内边距+width+右内边距+右边框+右外边距
      高度一样
    • 现有如下盒子模型,要求增加padding属性为25之后仍然保持元素高度为200
      --若保持元素高度不变的前提下,增加内边距是减少元素高度
    • 规律
      1)增加了padding之后元素的宽高也会发生变化
      2)如果增加了paddig之后还想保持元素的宽高,那么必须减少内容的宽高
    • 现有盒子模型,要求增加border属性为20之后仍然保持元素宽度为200
    • 规律
      1)增加了border之后元素的宽高也会发生变化
      2)如果增加了border之后还想保持元素的宽高,那么必须减少内容的宽高

    4.1box-sizing属性

    ---CSS3新增了一个box-sizing属性,这个属性可以保证我们给盒子新增padding和border之后,盒子元素的宽度和高度不变
    ---box-sizing属性是任何保证增加padding和border之后,盒子元素的宽度和高度不变
    --和我们前面学习的原理一样,增加padding和border之后要想保证盒子元素的宽度和高度不变,那么就必须减少一部分内容

    • 取值:

    1)border-box:

    元素的宽高=width/height高度;

    2)content-box:

    元素的宽高=边框+内边距+内容宽高

    注意:如果两个盒子是嵌套关系,那么设置了里面一个盒子的顶部的外边距,外面一个盒子也会被顶下来
    如果外面的盒子不想被一起顶下来,你们可以给外面的盒子添加一个边框属性或者给加一个overflow:hidden;
    如果在企业中,一般情况下如果需要控制嵌套关系盒子之间的距离,应该首先考虑padding 其次在考虑margin margin本质上是用于控制兄弟关系之间的间隙的
    在嵌套关系的盒子中,外面可以利用margin:0 auto;的方式来让里面的盒子在外面的盒子水平居中
    margin:0 auto;只对水平有效

    五、盒子居中和内容居中

    • text-align:center;
      --设置盒子中存储的文字/图片水平居中
    • margin:0 auto;盒子水平居中
      --让盒子自己居中
    • 清空默认边距
      --为什么要清空默认边距(外边距和内边距)?
      在企业开发中为了更好的控制盒子的宽度和计算盒子的宽度等等,所有在企业开发中,编写代码之前第一件事就是清空默认的边距
      --如何清空?

    *{
    padding:0;
    margin:0;
    }

    • 注意点:
      1)通配符选择器会找到当前所有标签,所有性能不好 企业开发中可以找个网址中拷贝
      --另一种
      www.baidu.com---》yui css reset--》第一个找includeccdependencies有一个网址赋值粘贴即可
      body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{
      margin :0;
      padding:0;
      }

    六、行高和字号

    • 什么是行高?
      在CSS中所有的行都有自己的行高
    • 注意点:
      ---行高(某一行内容的高度)和盒子的高(标签的高度)不是同一个概念
    • 规律
      1、文字在行高中默认是垂直居中的
      2、在企业开发中,我们经常将盒子的高度和行高设置一样,这样就可以保证一行文字在盒子的高度中是垂直居中的
      那简而言之:要想一行文字在盒子中垂直居中,那么只需要设置这行文字的行高等于盒子的高度即可
    • 格式:
      line-height:像素;
      两行如何在盒子居中:用padding加上box-sizing:border-nox;
    • 在企业开发中如果一个盒子有多行文字,那么外面就不能使用设置行高等于盒子高来实现让文字垂直居中,只能通过padding来让文字居中
    • 注意点:
      1.在企业开发中,如果一个盒子中存储的时文字,那么一般情况下我们会以盒子左边的内边距为基准,不会以后边的内边距为基准,因为这个右边的内边距有误差
      2.右边内边距的误差从何而来?因为右边如果放不下一个文字,那么文字就会换行显示,所以和内边距之间的距离就有了误差
      3.顶部的内边距并不是边框到文字顶部的距离,而是边框到行高的距离。

    七、做网页的步骤

    1)清空所有的边距
    2)从外到内,从上到下的编写网页

    <wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">





  • 相关阅读:
    开发中的报错问题
    vue2.0入门
    nodejs的一些基操
    git
    es6模块化规范
    js面向对象的笼统介绍
    this指向问题(改变它的指向)
    js面向对象杂谈
    原生js贪吃蛇
    bootstrap基础自我总结
  • 原文地址:https://www.cnblogs.com/8-y-m-l/p/10547778.html
Copyright © 2011-2022 走看看