盒子模型&双飞翼实现

CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:外边距(margin)、边框(border)、内边距(padding)、实际内容(content)四个属性。

盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。

盒模型有两种情况:W3C盒子模型和IE盒子模型

标准盒模型:css属性里的width和height规定的就是内容的宽高

怪异盒模型:css属性里的width和height规定的宽高是包含内外边距和边框的

两种模型可以用box-sizing属性指定

即box-sizing属性可以指定盒子模型种类,content-box指定盒子模型为W3C(标准盒模型),border-box为IE盒子模型(怪异盒模型)。

解决两种模式下样式的兼容性问题

建议不要给元素添加指定宽度的内边距,而是尝试将内边距或外边距添加到元素的父元素和子元素

css中width:100% 和widhth:auto 的区别

简单结论:auto表现为content+padding+border+margin值等于parent的宽度,不会溢出父亲,若设置为宽度是100%则当有内边距和外边距的时候,子元素的会溢出父亲

子元素的width为auto,且有内外边距:

子元素的width为100%,且有内外边距 :

双飞翼布局理解

(参考博文:https://www.jianshu.com/p/549aaa5fabaa)

双飞翼布局:两侧宽度固定,中间宽度自适应的三栏布局。

优点:

两侧宽度固定,中间宽度自适应

中间部分在DOM结构上优先,以便先行渲染

允许三列中的任意一列成为最高列

只需要使用一个额外的div标签

原理:主要是利用了margin为负数时的一些效果

实现思路:使用一个div包裹三块内容,使三块内容浮动(原因:使三个Div在文档流中在同一行),center块使用padding属性左右流出空间给left,right。left,right块元素分别相对定位和magin为负数的影响移动至预留的位置里。

margin为负数产生的影响:

1.对自身的影响:

margin-top为负值不会增加高度,只会产生向上位移

margin-bottom为负值不会产生位移,会减少自身的供css读取的高度。

2.对文档流的影响

元素如果用了margin-left:-20px;毋庸置疑的自身会向左偏移20px和定位(position:relative)有点不一样的是,在其后面的元素会补位,也就是后面的行内元素会紧贴在此元素的之后。。

CSS盒子模型与双飞翼布局的更多相关文章

  1. 这些HTML、CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML、CSS、盒子模型、内容布局)

    这些HTML.CSS知识点,面试和平时开发都需要 No1-No4   系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) ...

  2. [CSS属性设置,盒子模型,网页布局]

    [CSS属性设置,盒子模型,网页布局] CSS属性设置 1. 宽和高 width:属性可以为元素设置宽度. height:属性可以为元素设置高度. 块级标签的宽度不修改的情况下默认占浏览器的一整行,块 ...

  3. <转>HTML+CSS总结/深入理解CSS盒子模型

    原文地址:http://www.chinaz.com/design/2010/1229/151993.shtml 前言:前阵子在做一个项目时,在页面布局方面遇到了一点小问题,于是上stackoverf ...

  4. 聊聊css盒子模型

    css盒子模型原理: 在网页设计中常听的属性名:内容(content).填充/内边距(padding).边框(border).外边距(margin), CSS盒子模式都具备这些属性. 这些属性我们可以 ...

  5. css 盒子模型理解

    盒子模型是html+css中最核心的基础知识,理解了这个重要的概念才能更好的排版,进行页面布局.下面是自己积累和总结的关于css盒子模型的知识^_^,希望对初学者有用. 一.css盒子模型概念 CSS ...

  6. CSS盒子模型之详解

    前言:        盒子模型是css中最核心的基础知识,理解了这个重要的概念才能更好的排版,进行页面布局.一.css盒子模型概念    CSS盒子模型 又称框模型 (Box Model) ,包含了元 ...

  7. 前端面试必备的css盒子模型

    今天同学发给了我一份前端基础的面试题,第一道便是对css盒子模型的理解,我看到的第一眼想到的是div,然后就...懵逼了,知其然不知其所以然.所以打算写一写盒子模型的概念理解啥的,如有写的不当的地方, ...

  8. {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性  定位(position)z-index

    前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...

  9. css盒子模型(box-sizing)

    盒子模型 关于CSS重要的一个概念就是CSS盒子模型.它控制着页面这些元素的高度和宽度.盒子模型多少会让人产生一些困惑,尤其当涉及到高度和宽度计算的时候.真正盒子的宽度(在页面呈现出来的宽度)和高度, ...

随机推荐

  1. 编写jQuery插件的方法和注意点

    编写jQuery插件的方法和注意点 插件的种类 jQuery的插件主要分为3种类型. 1. 封装对象方法的插件 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进行操作,是最常见的 ...

  2. destoon自定义文件的伪静态地址优化

    destoon自定义文件的伪静态优化 destoon给出了一个自定义文件传参的方式 在/include/global.func.php 有个rewirte函数来处理 目前的处理方式:index.php ...

  3. 基于vs2015 SignalR开发的微信小程序使用websocket实现聊天功能

    一)前言 在微信小程上实现聊天功能,大致有三种方式:1)小程序云开发 2)购买第三方IM服务 3)使用自己的服务器自己开发. 这里重要讲使用自己的服务器自己开发,并且是基于vs的开发. 网上提供的解决 ...

  4. Mybatis 框架

    在之前的内容中,我写了Java的基础知识.Java Web的相关知识.有这些内容就可以编写各种各样丰富的程序.但是如果纯粹手写所有代码,工作量仍然很大.为了简化开发,隐藏一些不必要的细节,专心处理业务 ...

  5. kali添加路由

    kali添加路由 vim /etc/network/interfaces iface eth0 inet static address 192.168.1.10 netmask 255.255.255 ...

  6. 叶子的颜色---经典树上dp

    挺简单的一个dp #include<iostream> #include<cstring> #include<cstdio> #include<algorit ...

  7. 选择合适的最短路--hdu3499

    [题目链接](http://acm.hdu.edu.cn/showproblem.php?pid=3499) 刚看见题目,哦?不就是个最短路么,来,跑一下dijkstra记录最长路除个二就完事了 ,但 ...

  8. JAVA异常类Throwable解析

    在 Java 中,所有的异常都有一个共同的祖先java.lang包中的 Throwable类. Throwable: 有两个重要的子类:Exception(异常) 和 Error(错误) :二者都是  ...

  9. 如何把对象手动注入Spring容器并实现依赖注入

    将对象注入到Spring容器并实现依赖注入 public class UserDao { @Resource AccountService accountService; public void pr ...

  10. 20191024-3 互评Alpha阶段作品——胜利点组

    此作业要求参见 https://edu.cnblogs.com/campus/nenu/2019fall/homework/9860 基于NABCD评论作品,及改进建议 1.根据(不限于)NABCD评 ...