CSS盒子模型初解

我们如果以面向对象的角度去考虑CSS提供的盒子模型,可以建立一个BOX对象进行表示:

public class Box{
	// 外边距:控制与父级元素的距离
	public Margin margin;
	// 边框:控制边框的样式
	public Border border;
	// 内边距:控制元素与边框之间的距离(又称之为填充)
	public Padding pad;
	// 元素内容:显示的文字内容
	public Content con;
}


如下图所示

盒子模型


CSS将每个元素都包在一个看不见的盒子中,这个盒子包括margin、border、padding以及content内容。marging决定盒子距离其父级元素的距离,boder决定盒子边框的样式,padding控制元素显示内容与框边的距离,content才是元素真正显示的部分。写一段测试代码如下:

<html>
	<head>
		<title>CSS盒子模型</title>
		<style type="text/css">
			div{			
				/*设置元素部分的宽高*/	
    				width:100px;
    				height: 100px;

				/*设置边框*/
				border-style:solid;
				border-color: #22DDDD;
    				border-width:5px;

				/*设置该样式后,元素外框变大了*/
    				padding-left: 20px;
				padding-top: 50px;

				/*设置外边距*/
				margin-left:50px;
				margin-top: 50px;
			}
		</style>
	</head>

	<body>
		<div class="ele" style="background-color: #66ffff">
			元素内容
		</div>
	</body>
</html>

效果图如下:

效果图
盒子正如其名,想象一下我们收到的快递包裹,在买的物品<content>外面有一个盒子,盒子与物品直接有填充物<padding>防止物品损坏,盒子本身具有一定的厚度和高度<border>,而假设盒子被放在箱子(或任何容器,只要方便理解)中,箱子与盒子之间的距离就是外边距<margin>。


我们知道,在平面显示中,需要确定上下左右的距离才能进行定位,在CSS中,定位也是一样的操作,如果同样使用面向对象进行理解,可以有如下对象:

public class Margin{
	public String top;//上:表示为margin-top
	public String bottom;//下:表示为margin-bottom
	public String left;//左:表示为margin-left
	public String right;//右:表示为margin-right
}
外边距有上下左右四个属性,用来对元素进行定位以及分别设置不一样的样式,举个栗子:
border-style:dotted solid double dashed
其代表的顺序是边框的上、右、下、左分别不同的样式设置。

CSS盒子模型标准分IE版和W3C版,一般都会选择W3C版作为显示标准,当然,如果不加以规定的话,在不同浏览器上显示效果可能有比较大的差异,浏览器的默认解析标准并不相同,所以一般会加上doctype 声明,告诉浏览器使用什么标准进行解析:

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">

最后,希望本文能帮助到有需要的朋友

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值