CSS的盒模型

最近在实习,主要是做一些页面布局和逻辑等一些简单工作。嗯......因为实习之前连布局都不是很熟悉?。布局是用CSS来写,CSS(层叠样式表Cascading Style Sheets)是用来表现HTML、XML等文件的样式的语言,依我的理解,HTML、XML是骨骼,是整个页面的渲染架构;CSS是血肉,用来展现页面的外观,包括一些酷炫的动画;JavaScript 是灵魂和感官,可以做控制,也可以感知外界(获取数据等)。

学习CSS最基础的就是了解盒模型。

                                                

上图蓝色区域是内容(content)区,绿色是内边距(padding),黄色是边框(border),最外面一层驼色的是外边距(margin)。可以用快递盒来理解盒模型,快递的实际内容物(就是我们买的东西)是content,在内容物外包裹的一层泡沫纸是padding(假设泡沫纸与内容物、快递盒均紧密贴合),快递盒的纸板厚度是border,两个快递需要空出一定距离,那就是margin。

在使用盒模型时的一些小问题:

1. width:100%和padding结合使用会出现问题。height、width均指的是内容物的高和宽,例如上图的width = 375px,height = 2939.440px。当元素没有指定宽时,默认width+padding+border+margin = 100%,所以元素的实际宽度会被压缩,不到100%;当元素指定了宽度以后,那么元素的实际宽度就是100%,再加上padding等,盒子的总宽就会超过100%,当body被设成overflow:hidden的时候,就会是这个样子:

                                     

2. margin边距会合并。两个上下方向相邻的元素框垂直相遇时,外边距会合并,合并后的外边距的高度等于较大的那个边距值。比如当一个div的下边距为10px,另一个div的上边距也是10px时,他们叠加起来得到的边距还是10px;若一个是10px,一个是20px,则得到的是20px。

3. CSS需要初始化。

body, html, div, img, li, ul{
    margin:0;
    padding:0;
}

暂时就这些,想到还会更新~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值