box-sizing怪异盒子模型在移动端应用

盒子模型不必多少,公认的盒子模型

总宽度=width + padding(padding-left,padding-right) + border(border-left,border-right)

而怪异盒子模型

总宽度=width

哎 语文老师是数学教的 没办法只能表述成这样了,没关系看图,

先看下传统盒子模型 ,结构和代码如下

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Document</title>
 6     <style type="text/css">
 7         .big-box{
 8             width: 100px;
 9             height: 100px;
10             margin: 50px auto;
11             background: #cacaca;
12             padding: 10px;
13             border: 5px solid #cf2d28;
14         }
15     </style>
16 </head>
17 <body>
18     <div class="big-box"></div>
19 </body>
20 </html>

是的 很easy的一段代码,页面如下

这很好理解,好的 在浏览器里看下具体的盒子模型,很直观可用区域100px两边padding10px, border5px;

如果按照上面说的传统盒子计算公式就可以计算出总宽度:100+10*2+5*2 = 130 ,在浏览器指向看总宽度

显示130 X 130 perfect 完全想等。。

再看下怪异盒子模型啥样的,同样的上面结构和样式,现在在样式里面加个box-sizing:border-box;

页面展示就不看了和上面差不多,看下浏览器中具体的盒子模型

what‘s up,!! 里面可用区域变成70px,而且也不是像刚才有几种颜色现在里面全是白色,但padding还是10px,border还是5px;

浏览器指向看显示总宽度100px; 和刚才定义的 总宽度=width 符合,

明白了,传统盒子padding和border的宽都是在width外面的,此时width多少就是可用区域多大,

怪异盒子就是padding和border的宽都是在width里面,width减去他俩的宽才是可用区域的宽,搜嘎

看张图

这个如果在网页中做是很好做,但是是在移动端用的,如果用传统布局和单位随着不同和越小的尺寸会把布局打乱掉,好的先布下局

 1         <div class="user-list">
 2             <ul>
 3                 <li>
 4                     <img src="images/user-icon (1).png">
 5                     <span>个人信息</span>
 6                 </li>
 7                 <li>
 8                     <img src="images/user-icon (2).png">
 9                     <span>银行信息</span>
10                 </li>
11                 <li>
12                     <img src="images/user-icon (3).png">
13                     <span>投资记录</span>
14                 </li>
15                 <li class="im-width"></li>
16                 <li>
17                     <img src="images/user-icon (4).png">
18                     <span>取款</span>
19                 </li>
20                 <li>
21                     <img src="images/user-icon (5).png">
22                     <span>注资</span>
23                 </li>
24                 <li class="im-width"></li>
25             </ul>
26         </div>

样式如下

 1 .user-list{
 2     width: 100%;
 3     padding:0 5%;
 4 }
 5 .user-list ul{
 6     width: 100%;
 7     list-style: none;
 8 }
 9 .user-list ul li{
10     float: left;
11     width: 33.3%;
12     height: 7.5em;
13     background: #ececec;
14     text-align: center;
15     box-sizing:border-box;
16     margin-bottom: 5px;
17     border-right: 5px solid #f2f2f2;
18     position: relative;
19 }
20 .user-list ul li.im-width{
21     width: 16.7%;
22     background: #f2f2f2;
23 }
24 .user-list ul li img{
25     width: 55%;
26 }
27 .user-list ul li span{
28     position: absolute;
29     bottom: 0;
30     left: 0;
31     width: 100%;
32     text-align: center;
33     color: #464646;
34     font-size: 1em;
35 }

此时无论怎么改变屏幕尺寸这个布局是不会改变的,

下面box-sizing的兼容,差不多现在浏览器都支持了 对于说IE6什么的 别和我抬杠

时间: 2024-08-10 21:27:46

box-sizing怪异盒子模型在移动端应用的相关文章

CSS Box Model(盒子模型)

CSS Box Model(盒子模型) 一.简介 所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容. 盒模型允许我们在其它元素和周围元素边框之间的空间放置元素. 下面的图片说明了盒子模型(Box Model): 不同部分的说明: Margin(外边距) - 清除边框外的区域,外边距是透明的. Border(边框) - 围绕在内边距和内容外的边框.

padding标准盒模型和怪异盒子模型

我们都知道padding是为块级元素设置内边距 但是在使用过程中,我们却会遇到一些问题.padding的标准盒模型和怪异盒模型 padding盒子模型 我们通过demo来讲这个问题,用文字干讲第一没意思,第二讲不明白 标准盒模型: 我们先摆出HTML和CSS代码: 1 <div class="shoebox"> <!--此div模仿鞋子的鞋盒--> 2 <div class="shoes"> <!--此div模仿鞋子--&g

盒子模型(Box Model)

盒子模型(Box Model) ■ 盒子模型--概念 在网页设计中常用的属性名:内容(content),填充(padding),边框(border),边界(margin),CSS 盒子模式都具备这些属性. 细节说明: ?html 元素都可以看成一个盒子 ?盒子模型的参照物不一样,则使用的 css 属性不一样.比如:从 div1 的角度看,是 margin-right,从 div2 看,则是 margin-left. ?如果你不希望破坏外观,则尽量使用 margin 布局,因为 padding 可

CSS3中的弹性盒子模型

介绍 在css2当中,存在标准模式下的盒子模型和IE下的怪异盒子模型.这两种方案表示的是一种盒子模型的渲染模式.而在css3当中,新增加了弹性盒子模型,弹性盒子模型是一种新增加的强大的.灵活的布局方案.弹性盒子模型是css3中新提出的一种布局方案.是一种为了应对针对不同屏幕宽度不同设备的一整套新的布局方案.主要是对一个容器中的子元素进行排列.对齐和分配空白空间的方案的调整. 新旧版本的弹性盒子模型在之前,css3曾经推出过旧版本的弹性盒子模型.相对于新版本的弹性盒子模型而言,旧版本的内容与新版本

web前端入门到实战:CSS3中的弹性盒子模型

介绍 在css2当中,存在标准模式下的盒子模型和IE下的怪异盒子模型.这两种方案表示的是一种盒子模型的渲染模式.而在css3当中,新增加了弹性盒子模型,弹性盒子模型是一种新增加的强大的.灵活的布局方案.弹性盒子模型是css3中新提出的一种布局方案.是一种为了应对针对不同屏幕宽度不同设备的一整套新的布局方案.主要是对一个容器中的子元素进行排列.对齐和分配空白空间的方案的调整. 新旧版本的弹性盒子模型在之前,css3曾经推出过旧版本的弹性盒子模型.相对于新版本的弹性盒子模型而言,旧版本的内容与新版本

从CSS盒子模型说起

前言 总括: 对于盒子模型,BFC,IFC和外边距合并等概念和问题的总结 原文地址:从CSS盒子模型说起 知乎专栏:前端进击者 博主博客地址:Damonare的个人博客 为学之道,莫先于穷理:穷理之要,必先于读书. 正文 ? CSS盒子模型是CSS基础中的基础,个人之前对于这块的理解有偏差?,由于涉及知识点比较多所以写一篇总结备忘.之前打算的是两周一次更新博文的,但是时间用在了刷题上,做了很多leetcode上算法数据结构的题记录在github,但其实也有在更新啦~只不过是对之前的一些博文进行纠

HTML盒子模型

一.什么是盒子模型? CSS中, Box Model叫盒子模型(或框模型), Box Model规定了元素框处理元素内容(element content). 内边距(padding).边框(border) 和 外边距(margin) 的方式 二.第一层边框--border的常用属性 1.border-color--边框颜色 2.border-style--边框样式 dashed:虚线;solid:细线 3.border-width--边框宽度,单位像素px 4.border:粗细,颜色,样式 三

css 大话盒子模型

什么是盒子模型? CSS中, Box Model叫盒子模型(或框模型),Box Model规定了元素框处理元素内容(element content).内边距(padding).边框(border) 和 外边距(margin) 的方式.在HTML文档中,每个元素(element)都有盒子模型,所以说在Web世界里(特别是页面布局),Box Model无处不在. 什么是Box Model? 为什么要理解盒子模型? 因为(能够更好的装逼)? 如果你理解了盒子模型,你就能知道这个东西在页面上面的大小,既

怪异盒子

box-sizing: content-box;  标准盒子模型, 宽高=content的宽高 box-sizing: border-box;  怪异盒子模型(IE盒子模型),宽高=border+padding+content box-sizing: padding-box;  火狐盒子,宽高=padding+content