DIV盒子默认是换行独占100%宽度:
DIV盒子没有赋予CSS样式时,默认DIV盒子是独占一行(宽度为100%)。
如下默认情况HTML代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>div实例 www.dvicss5.com</title>
</head>
<body>
<div>第一个div</div>
<div>第二个盒子</div>
</body>
</html>
独占一行div盒子截图
2个div对象盒子独占一行,形成自动换行布局效果截图
通过以上DIV案例,我们可以观察到DIV的确默认情况下是独占一行宽度100%。
如何让DIV并排不换行呢?
1、对div设置float
2、对div设置display样式
一、对div设置float浮动样式 - TOP
对div设置float:left样式相当于是让div对象靠左,自然失去了本身宽度样式。
让DIV+CSS实现DIV并排不换行实例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>无标题文档</title>
<style>
div{ float:left}
</style>
</head>
<body>
<div>第一个div盒子</div>
<div>第二个div盒子</div>
</body>
</html>
说明:我们对div设置了float:left
实例效果截图:
使用css浮动样式让div失去默认的100%宽度
二、对div设置display并排样式 - TOP
通过对div设置display:inline样式让div同样失去默认100%独占一行的宽度。
display:inline意思是让对象并排显示。
1、实例HTML源代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>div并排实例 www.dvicss5.com</title>
<style>
div{ display:inline}
</style>
</head>
<body>
<div>第一个div盒子</div>
<div>第二个div盒子</div>
</body>
</html>
2、实现不换行div效果截图
使用css display实现div不换行截图
总结:实现div不换行其实是让div默认独占一行的样式去掉,去掉可以使用float和display样式。PS:display:inline 样式的元素宽度为 auto
浮动的元素不占高度,只占宽度,不设置宽度时,默认宽度为auto;当一行容不下多个浮动元素时会自动换行
bootstrop 里面的col-*-* 原理也是左浮动。在bootstrop 中浮动的元素在.row 或.
container父级元素中,则会占据高度
:after清除浮动
元素设置浮动以后,其父元素以及父元素的兄弟元素的布局都会受到影响,如父元素的背景边框不能正常显示,父元素的兄弟元素位置布局错误等,
为了避免这种浮动带来的影响必须要清除浮动,:after就是其中的一种方法。
CSS代码:
ul:after{ content: ''; display: block; width: 0; height: 0; clear: both; }
或者用bootstrap 中的
.clearfix 类来清除浮动
浮动的元素当内容超过剩余行宽度时,该元素会另起一行。