zoukankan      html  css  js  c++  java
  • css盒模型

    css有种基础实际模式叫盒模型,定义了web页面中的元素是如何看做盒子来解析的。

    1、css盒模型简介

      在css中主要有以下几种盒模型:inline、inline-block,block、table、absolute position、float。

      浏览器把每个元素看做一个盒模型,每个盒模型是由以下几个属性组合所决定的:display、position、float、width、height、margin、padding和border等,不同类型的盒模型会产生不同的布局。

      w3c标准的盒模型

      外盒尺寸计算

        element空间高度 = 内容高度(height)+ 内边距(padding)+ 边框(border)+ 外边距(margin)

        element空间宽度 = 内容宽度(width)+ 内边距(padding)+ 边框(border)+ 外边距(margin)

      内盒尺寸

        element高度 = 内容高度(height)+ 内边距(padding)+ 边框(border)

        element宽度 = 内容宽度(height)+ 内边距(padding)+ 边框(border)

    2、css3盒模型

      css3盒模型增添了一个盒模型属性box-sizing,能够事先定义盒模型的尺寸解析方式,语法为:box-sizing:content-box | border-box | inherit

      box-sizing:content-box;默认值,让元素维持w3c的标准盒模型。元素的宽度和高度(width、height)等于border+padding+height/width

      box-sizing:border-box;此值会重新定义css2.1中盒模型组成的模式,让元素维持IE传统的盒模型(IE6以下版本和IE6~7的怪异模式)。元素的宽高等于元素内容(content)的宽高

      box-sizing:inherit;此值使元素继承父元素的盒模型模式;

      box-sizing属性主要用来控制元素的盒模型的解析模式,其主要目的是控制元素的总宽度。在w3c规范中,元素的box-sizing默认属性值是content-box值,如果不显示属性值box-sizing属性值为border-box,才能明确对元素设置一个总宽度。这种情况下会使页面布局更加方便。

      IE6以下以及怪异模式下的IE浏览器对盒模型虽然不符合W3C的标准规范,但这种解析方式并不是一无是处,它也有好的一方面,不管如何修稿元素的边框或者内边距大小,都不会影响元素盒子的总尺寸,也就不会打乱页面的整体布局。而在标准浏览器下,按照W3C规范对盒模型的解析,一旦修改了元素的边框或者内边距,就会影响元素盒子的尺寸,从而影响整个页面的布局。

  • 相关阅读:
    PAT (Advanced Level) Practice 1055 The World's Richest (25 分) (结构体排序)
    PAT (Advanced Level) Practice 1036 Boys vs Girls (25 分)
    PAT (Advanced Level) Practice 1028 List Sorting (25 分) (自定义排序)
    PAT (Advanced Level) Practice 1035 Password (20 分)
    PAT (Advanced Level) Practice 1019 General Palindromic Number (20 分) (进制转换,回文数)
    PAT (Advanced Level) Practice 1120 Friend Numbers (20 分) (set)
    从零开始吧
    Python GUI编程(TKinter)(简易计算器)
    PAT 基础编程题目集 6-7 统计某类完全平方数 (20 分)
    PAT (Advanced Level) Practice 1152 Google Recruitment (20 分)
  • 原文地址:https://www.cnblogs.com/chengkun101/p/4345055.html
Copyright © 2011-2022 走看看