CSS布局属性
2016-06-11 14:59
295 查看
一、CSS布局属性
Width:设置对象的宽度(width:45px)。
Height:设置对象的高度(Height:45px;)。
Background:设置对象的背景颜色、背景图像。
1.背景颜色
background:#09F;
2.背景图像
background:url(file:///C|/Users/Administrator/Desktop/huipu.jpg) repeat-x;
repeat-x代表横向重复,还可以设置repeat-y。
Float:
Float属性是DIV+CSS布局中最基本也是最常用的属性,用于实现多列功能,我们知道<div>标签默认一行只能显示一个,而使用Float属性可以实现一行显示多个div的功能,最直接解释方法就是能实现表格布局的多列功能。
Float属性有left、right、none三个值,none默认属性不用管,主要是left和right两个属性最常用。
Margin:
Margin属性用于设置两个元素之间的距离。
Margin属性设置值说明:
1.单独设置
margin-left:20px;设置左边
margin-right:20px;设置右边
同理上下分别是margin-top:20px;、margin-bottom:20px;
2.简写设置
Margin:10px;设置对象四周。
Margin:10px 5px;设置对象上下为10px,左右为5px;
test1:float:left; float:left;
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
test2: float:left, float:right
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:right;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
Margin:
Margin属性用于设置两个元素之间的距离。
Margin属性设置值说明:
1.单独设置
margin-left:20px;设置左边
margin-right:20px;设置右边
同理上下分别是margin-top:20px;、margin-bottom:20px;
2.简写设置
Margin:10px;设置对象四周。
Margin:10px 5px;设置对象上下为10px,左右为5px;
test3: margin-left:20px;
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:20px;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
Padding:
Padding属性用于设置一个元素的边框与其内容的距离。
1.单独设置
padding-left:20px;设置左边
padding-right:20px;设置右边
同理上下分别是padding-top:20px;、padding-bottom:20px;
2.简写设置
padding:10px;设置对象四周。
padding:10px 5px;设置对象上下为10px,左右为5px;
test4: padding-left:10px;padding-top:20px;
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;padding-left:10px;padding-top:20px;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:20px;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
Clear:
Clear属性主要是清楚float属性设置的效果,使用Float属性设置一行有多个DIV后(多列),最好在下一行开始之前使用Clear属性清楚一下浮动,否则上面的布局会影响到下面。
1、如何在上面的例子中橙色方块的下面另起一行放置一个黑色方块。
我们直接在html中加入一个div试试
我们看到kid3跑到1、2的下面去了,原因就是应为kid2使用了float属性,解决方法可以直接在里面加入clear属性
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;}
.kid3 { width:200px; height:100px; background: #000; clear:both;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
<div class = "kid3"></div>
</div>
</div>
</body>
</html>
2、还有一种布局中常见的问题,此处一定要看。
我们把最外层属性的高度去了,看看什么效果。
跟我们想象的不一样吧,我们想象中应该是kwstu层把kid1和kid2包裹住才对,为什么没有达到我们要的效果呢,原因就是应该kid1和kid2使用了float属性,此时可以使用clear属性清楚一下即可。
一般情况都是在css里面创建一个.clear公共清除浮动类,直接使用一个div调用即可
2.还有一个初学div时经常遇到的问题,如果把上边的clear层去掉,然后再在kwstu层下面开始一行新的布局,然后在下面新的div中使用margin-top属性,肯定不管用。这个地方是初学者布局中肯定要遇到的问题,一定要注意。
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;}
.parent1 {width:300px; margin-top:20px;}
.kid3 {width: 100px; height:100px; background:#99FF99;float:left;}
.kid4 {width: 100px; height:100px; background:#FFFF77;float:left;margin-left:10px;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
<div class="parent1">
<div class = "kid3"></div>
<div class = "kid4"></div>
</div>
</div>
</body>
</html>
解决办法:
在parent层和parent1层直接加一个清除浮动层即可。
Width:设置对象的宽度(width:45px)。
Height:设置对象的高度(Height:45px;)。
Background:设置对象的背景颜色、背景图像。
1.背景颜色
background:#09F;
2.背景图像
background:url(file:///C|/Users/Administrator/Desktop/huipu.jpg) repeat-x;
repeat-x代表横向重复,还可以设置repeat-y。
Float:
Float属性是DIV+CSS布局中最基本也是最常用的属性,用于实现多列功能,我们知道<div>标签默认一行只能显示一个,而使用Float属性可以实现一行显示多个div的功能,最直接解释方法就是能实现表格布局的多列功能。
Float属性有left、right、none三个值,none默认属性不用管,主要是left和right两个属性最常用。
Margin:
Margin属性用于设置两个元素之间的距离。
Margin属性设置值说明:
1.单独设置
margin-left:20px;设置左边
margin-right:20px;设置右边
同理上下分别是margin-top:20px;、margin-bottom:20px;
2.简写设置
Margin:10px;设置对象四周。
Margin:10px 5px;设置对象上下为10px,左右为5px;
test1:float:left; float:left;
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
test2: float:left, float:right
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:right;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
Margin:
Margin属性用于设置两个元素之间的距离。
Margin属性设置值说明:
1.单独设置
margin-left:20px;设置左边
margin-right:20px;设置右边
同理上下分别是margin-top:20px;、margin-bottom:20px;
2.简写设置
Margin:10px;设置对象四周。
Margin:10px 5px;设置对象上下为10px,左右为5px;
test3: margin-left:20px;
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:20px;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
Padding:
Padding属性用于设置一个元素的边框与其内容的距离。
1.单独设置
padding-left:20px;设置左边
padding-right:20px;设置右边
同理上下分别是padding-top:20px;、padding-bottom:20px;
2.简写设置
padding:10px;设置对象四周。
padding:10px 5px;设置对象上下为10px,左右为5px;
test4: padding-left:10px;padding-top:20px;
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;padding-left:10px;padding-top:20px;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:20px;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
</div>
</body>
</html>
Clear:
Clear属性主要是清楚float属性设置的效果,使用Float属性设置一行有多个DIV后(多列),最好在下一行开始之前使用Clear属性清楚一下浮动,否则上面的布局会影响到下面。
1、如何在上面的例子中橙色方块的下面另起一行放置一个黑色方块。
我们直接在html中加入一个div试试
<!DOCTYPE html> <html> <head> <title>CSS布局属性练习</title> <style type="text/css"> .parent{width:300px;height:200px;background:#09F;} .kid1 { width: 100px; height:100px; background:#F96;float:left;} .kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;} .kid3 { width:200px; height:100px; background: #000; } </style> </style> </head> <body> <div class="parent"> <div class = "kid1"></div> <div class = "kid2"></div> <div class = "kid3"></div> </div> </div> </body> </html>
我们看到kid3跑到1、2的下面去了,原因就是应为kid2使用了float属性,解决方法可以直接在里面加入clear属性
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;height:200px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;}
.kid3 { width:200px; height:100px; background: #000; clear:both;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
<div class = "kid3"></div>
</div>
</div>
</body>
</html>
2、还有一种布局中常见的问题,此处一定要看。
我们把最外层属性的高度去了,看看什么效果。
<!DOCTYPE html> <html> <head> <title>CSS布局属性练习</title> <style type="text/css"> .parent{width:300px;background:#09F;} .kid1 { width: 100px; height:100px; background:#F96;float:left;} .kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;} </style> </style> </head> <body> <div class="parent"> <div class = "kid1"></div> <div class = "kid2"></div> </div> </div> </body> </html>
跟我们想象的不一样吧,我们想象中应该是kwstu层把kid1和kid2包裹住才对,为什么没有达到我们要的效果呢,原因就是应该kid1和kid2使用了float属性,此时可以使用clear属性清楚一下即可。
一般情况都是在css里面创建一个.clear公共清除浮动类,直接使用一个div调用即可
<!DOCTYPE html> <html> <head> <title>CSS布局属性练习</title> <style type="text/css"> .parent{width:300px;background:#09F;} .kid1 { width: 100px; height:100px; background:#F96;float:left;} .kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;} .clear {clear:both;} </style> </style> </head> <body> <div class="parent"> <div class = "kid1"></div> <div class = "kid2"></div> <div class = "clear"></div> </div> </div> </body> </html>此问题还有一个解决办法:直接在parent样式中加入overflow:hidden;属性即可。
<!DOCTYPE html> <html> <head> <title>CSS布局属性练习</title> <style type="text/css"> .parent{width:300px;background:#09F;overflow:hidden;} .kid1 { width: 100px; height:100px; background:#F96;float:left;} .kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;} </style> </style> </head> <body> <div class="parent"> <div class = "kid1"></div> <div class = "kid2"></div> </div> </div> </body> </html>
2.还有一个初学div时经常遇到的问题,如果把上边的clear层去掉,然后再在kwstu层下面开始一行新的布局,然后在下面新的div中使用margin-top属性,肯定不管用。这个地方是初学者布局中肯定要遇到的问题,一定要注意。
<!DOCTYPE html>
<html>
<head>
<title>CSS布局属性练习</title>
<style type="text/css">
.parent{width:300px;background:#09F;}
.kid1 { width: 100px; height:100px; background:#F96;float:left;}
.kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;}
.parent1 {width:300px; margin-top:20px;}
.kid3 {width: 100px; height:100px; background:#99FF99;float:left;}
.kid4 {width: 100px; height:100px; background:#FFFF77;float:left;margin-left:10px;}
</style>
</style>
</head>
<body>
<div class="parent">
<div class = "kid1"></div>
<div class = "kid2"></div>
</div>
<div class="parent1">
<div class = "kid3"></div>
<div class = "kid4"></div>
</div>
</div>
</body>
</html>
解决办法:
在parent层和parent1层直接加一个清除浮动层即可。
<!DOCTYPE html> <html> <head> <title>CSS布局属性练习</title> <style type="text/css"> .parent{width:300px;background:#09F;overflow:hidden;} <!-- 解决parent层的问题 --> .kid1 { width: 100px; height:100px; background:#F96;float:left;} .kid2 { width: 100px; height:100px; background:#F9F;float:left;margin-left:10px;} .parent1 {width:300px; margin-top:20px; background:#0066FF;} .kid3 {width: 100px; height:100px; background:#99FF99;float:left;} .kid4 {width: 100px; height:100px; background:#FFFF77;float:left;margin-left:10px;} .clear {clear:both;} </style> </style> </head> <body> <div class="parent"> <div class = "kid1"></div> <div class = "kid2"></div> </div> <div class="parent1"> <div class = "kid3"></div> <div class = "kid4"></div> <div class = "clear"></div> <!-- 解决parent1层的问题 --> </div> </div> </body> </html>
相关文章推荐
- Web布局连载——两栏固定布局(五)
- [div+css]晒晒最新制作专题推广页模板
- 在Windows 8.1的IE 11中屏蔽双击放大功能
- 盒子模型
- CSS选择器
- CSS样式优先权
- HTML5调用摄像头实例
- Powershell 创建炫丽美观的Html报表
- [css] line-height 百分比单位和数值单位的区别
- Apple官网研究之使用Justify布局导航
- 关于前端的思考与感悟
- rem : web app适配的秘密武器
- jquery高级应用之Deferred对象
- 设计更快的网页(三):字体和 CSS 调整
- 纯CSS制作的新闻网站中的文章列表
- 10条影响CSS渲染速度的写法与使用建议第1/3页