当前位置: 代码迷 >> 综合 >> 前端知识之(HTMLCSS)
  详细解决方案

前端知识之(HTMLCSS)

热度:65   发布时间:2024-03-08 12:47:33.0

盒模型

什么是盒模型呢?
在html中,每个元素都可以看作盒模型,总共有四部分,分别是:content(内容区),padding(填充区),border(边框),margin(外边区)。
盒模型呢分为两种:
标准盒模型:总宽度(页面中占的宽度)= width + margin(左右) + padding(左右) + border(左右)、
怪异盒模型:总宽度(即width已经包含了padding和border值)= width + margin(左右)(IE浏览器)
怎么将这两者转换呢?
通过box-sizing来转换
box-sizing:content-box; 将采用标准模式的盒子模型标准
box-sizing:border-box; 将采用怪异模式的盒子模型标准
box-sizing:inherit; 规定应从父元素继承 box-sizing 属性的值。

BFC

我来说说BFC,BFC呢即是两栏布局的一种排版方式,也可以解决边距重叠的问题。
怎么通过BFC来进行两栏布局呢
左边div宽度固定,给右边的div overflow:hidden就可以实现左边固定,右边自适应
解决边距重叠
父级的边距重叠的话,给父元素添加overflow:hidden就可以解决
兄弟级的边距重叠的话,会是垂直重叠的,给他们之间加入一个空元素,并给他overflow:hidden,就可以解决margin重叠的问题

清楚浮动

我来列举四种清楚浮动的方法,不全还请谅解。
添加额外标签法
添加overflow:hidden
伪类 :after
双伪类 :before :after

水平垂直水平居中

我在这里列举三种水平垂直水平居中的方法
公用dom结构

  <div id="box"><div id="x"></div></div>

第一种 父相子绝

  #box{
    width: 400px;height: 400px;background: red;position: relative;}#x{
    width: 200px;height: 200px;background: yellow;position: absolute;left: 50%;top: 50%;margin-left: -100px;margin-top: -100px;}

第二种 弹性盒子

 #box{
    width: 400px;height: 400px;background: red;display: flex;justify-content: center;align-items: center;}#x{
    width: 200px;height: 200px;background: yellow;}

第三种 父相子绝 通过margin:0 auto

  #box{
    width: 400px;height: 400px;background: red;position: relative;}#x{
    width: 200px;height: 200px;background: yellow;position: absolute;left: 0;top: 0;right: 0;bottom: 0;margin: auto;}

三栏布局(圣杯布局和双飞翼布局)

三栏布局有很多,那我为什么要说这两种呢?因为这两个很经典,懂这两个就对三栏布局有一定的认识了。
首先我来说说圣杯布局
未完