ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Web前端-CSS(5)

2021-05-24 17:35:25  阅读:134  来源: 互联网

标签:Web Java 前端 元素 疯狂 HTML nbsp div CSS


盒模型和display属性

盒模型由内容区、内填充区、边框区、外边距组成。HTML元素也可以包含其他元素,这时父元素的内容区将被作为子元素的容器,子元素通常只能出现在内容区。有两种最基本的盒模型:

  • block类型:这种盒模型的元素默认占据一行,允许通过CSS设置宽度、高度。例如div、p元素。
  • inline类型:这种盒模型的元素不会占据一行(默认允许在一行放置多个元素),即使通过CSS设置宽度、高度也不会起作用。例如span、a元素。

div和span的区别:

<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 盒模型的基本类型 </title>
	<style type="text/css">
		div,span{
			width: 300px;
			height: 40px;
			border: 1px solid black;
		}
	</style>
</head>
<body>
<div>div元素一</div>
<div>div元素二</div>
<span>span元素一</span>
<span>span元素二</span>
</body>
</html>

设置了div和span元素的高度和宽度,但是span是inline盒模型,因此高度、宽度对它无效。

CSS为display属性提供了block、inline两个属性值,用于改变HTML元素默认的盒模型。例如将上面的改为如下形式:

<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 盒模型的基本类型 </title>
	<style type="text/css">
		div,span{
			width: 300px;
			height: 40px;
			border: 1px solid black;
		}
		/* 将div元素改为inline盒模型 */
		body>div{
			display:inline;
		}
		/* 将span元素改为block盒模型 */
		body>span{
			display:block;
		}
	</style>
</head>
<body>
<div>div元素一</div>
<div>div元素二</div>
<span>span元素一</span>
<span>span元素二</span>
</body>
</html>

none值和visibility属性

display属性可指定为none值,用于设置目标对象隐藏,一旦该对象隐藏,其占用的页面空间也会释放。与此类似的还有visibility属性,该属性也可用于设置目标对象是否显示,但隐藏后元素占用的页面空间会保留。visibility属性的两个常用值为visible和hidden,分别用于控制目标对象的显示的隐藏。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 隐藏元素 </title>
	<style type="text/css">
	/* 设置div元素的宽度、高度、背景色和边框 */
	div{
		width:300px;
		height:40px;
		background-color:#ddd;
		border:2px solid black;
	}
	</style>
</head>
<body>
<input type="button" value="隐藏" 
	onclick="document.getElementById('test1').style.display='none';"/>
<input type="button" value="显示" 
	onclick="document.getElementById('test1').style.display='';"/>
<div id = "test1">
使用display控制对象的显示和隐藏
</div>
<input type="button" value="隐藏"
	onclick="document.getElementById('test2').style.visibility ='hidden'"/>
<input type="button" value="显示"
	onclick="document.getElementById('test2').style.visibility ='visible'"/>
<div id = "test2">
使用visibility控制对象的显示和隐藏
</div>
<hr/>
</body>
</html>

inline-block类型的盒模型

是inline和block的集合体,这种类型的盒模型的元素既不会占据一行,同时也支持width、height指定宽度及高度。

默认情况下,多个inline-block类型的盒模型的元素将会采用底端对齐的方式,底部会位于同一条水平线上,也可以让其在顶端对齐,为它们增加vertical-aligon:top即可。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 多栏布局 </title>
	<style type="text/css">
		div#container {
			width: 960px;
		}
		div>div {
			border: 1px solid #aaf;
			display: inline-block;
			/* 设置HTML元素的width属性包括边框 */
			box-sizing: border-box;
			vertical-align: top;
			padding:5px;
		}
	</style>
</head>
<body>
<div id="container">
<div style="width:220px">
<h2>疯狂软件开班信息</h2>
<ul>
	<li>2011年11月10日&nbsp;已满已开班</li>
	<li>2011年12月02日&nbsp;爆满已开班</li>
	<li>2012年02月08日&nbsp;已满已开班</li>
</ul>
</div><div style="width:500px;">
<h2>疯狂软件介绍</h2>
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java品牌专注高级软件编程,以“十年磨一剑”的心态打造全国最强(不是之一)疯狂Java学习体系:包括疯狂Java体系原创图书,疯狂Java学习路线图,这些深厚的知识沉淀已被大量高校、培训机构奉为经典。<br/> 
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java怀抱“软件强国”的理想,立志以务实的技术来改变中国的软件教育。经过八年沉淀,疯狂Java强势回归。疯狂Java创始人李刚,携疯狂Java精英讲师团队肖文吉、黄勇等老师将带给广大学习者“非一般”的疯狂。
</div><div style="width:240px">
<h2>公司动态</h2>
<ul>
	<li>《疯狂Java讲义》(第3版)上市</li>
	<li>泰豪电网软件公司来校召开现场招聘会</li>
	<li>疯狂学子赴武汉光谷软件园入职</li>
	<li>新华南方来校现场招聘</li>
</ul>
</div>
</div>
</body>
</html>

如上,如果设置div元素采用inline-block盒模型显示,那么页面中的3个div元素都不会独立占一行。也可通过width、height指定宽度、高度,从而实现多栏布局。

除此之外,使用inline-block盒模型也可以非常方便地实现水平菜单:

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 导航菜单 </title>
	<style type="text/css">
		body>div{
			text-align: center;
		}
		div>div{
			/* 设置为inline-block盒模型,保证一行显示 */
			display: inline-block;
			border: 1px solid black;
		}
		a {
			text-decoration:none;
			/* 设置为block盒模型,允许设置高度、宽度 */
			display: block;
			width: 120px;
			padding: 10px;
			/* 设置默认背景色 */
			background-color: #eee;
		}
		a:hover {
			/* 设置鼠标悬停时的背景色 */
			background-color: #aaa;
			font-weight: bold;
		}
	</style>
</head>
<body>
<div>
	<div><a href="http://www.crazyit.org">疯狂Java联盟</a></div><div>
	<a href="http://www.fkjava.org">疯狂软件教育</a></div><div>
	<a href="http://www.fkjava.org/companyInfo.html">关于我们</a></div><div>
	<a href="http://www.crazyit.org">疯狂成员</a></div>
</div>
</body>
</html>

inline-table类型的盒模型

默认情况下,table元素属于block类型的盒模型,也就是说,该元素默认会占据一行:它的左边不允许出现其他内容右边也是,该元素也可以通过width、height设置宽度高度。

CSS为table元素提供了一个inline-table类型的盒模型,允许表格通过width、height设置宽度高度,允许左右出现其他内容。

为了控制表格与前后内容垂直对齐,可以添加vertical-align属性实现,设置该属性为top;设置为bottom是底端对齐。

<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> inline-table盒模型 </title>
	<style type="text/css">
		td {
			border: 1px solid black;
		}
		table{
			width: 360px;
			border-collapse: collapse;
			/* 设置表格显示为inline-table盒模型 */
			display: inline-table;
			/* 设置顶端对齐 */
			vertical-align: top;
		}
	</style>
</head>
<body>
前面内容
<table style="">
	<tr><td>疯狂Java讲义</td><td>疯狂Ajax讲义</td></tr>
	<tr><td>疯狂XML讲义</td><td>疯狂Android讲义</td></tr>
</table>
后面内容
</body>
</html>

页面设置以inline-table盒模型显示表格,所以表格前后都可显示内容。

使用table类型的盒模型实现表格

display还有如下属性值:

  • table:将目标HTML元素显示为表格。
  • table-caption:将目标HTML元素显示为表格标题。
  • table-cell:将目标HTML元素显示为单元格。
  • table-column:将目标HTML元素显示为表格列。
  • table-column-group:将目标HTML元素显示为列组。
  • table-header-group:将目标HTML元素显示为表格头部分。
  • table-footer-group:将目标HTML元素显示为表格脚部分。
  • table-row:将目标HTML元素显示为表格行。
  • table-row-group:将目标HTML元素显示为表格行组。
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 表格相关的盒模型 </title>
	<style type="text/css">
		div>div {
			display: table-row;
			padding: 10px;
		}
		div>div>div{
			display: table-cell;
			border: 1px solid black;
		}
	</style>
</head>
<body>
<div style="display:table;width:400px;">
	<div style="display:table-caption;">疯狂Java体系图书</div>
	<div>
		<div>疯狂Java讲义</div>
		<div>疯狂Android讲义</div>
	</div>
	<div>
		<div>疯狂Ajax讲义</div>
		<div>疯狂XML讲义</div>
	</div>
<div>
</body>
</html>

在上面页面中,虽然都是div元素,但由于这些元素的display属性设置为表格相关的盒模型,因此各div元素将会组成一个表格。

list-item类型的盒模型

可以将目标元素转换为类似于ul的列表元素,也可以同时在元素前面添加列表标志。如下将多个div元素的display设置list-item。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> list-item </title>
	<style type="text/css">
		/* 设置div以list-item的盒模型显示 */
		div{
			display: list-item;
			list-style-type: square;
			margin-left: 20px;
		}
	</style>
</head>
<body>
<div>疯狂Java讲义</div>
<div>疯狂Android讲义</div>
<div>轻量级Java EE企业应用实战</div>
</body>
</html>

如上设置了3个div元素以list-item盒模型显示并设置这些元素的前面添加实心方块。

如果为不同元素添加不同的列表符号,并使用不同的margin-left,就可以通过list-item盒模型实现多级列表的效果:

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 多级列表 </title>
	<style type="text/css">
		body>div{
			display: list-item;
			list-style-type: disc ;
			margin-left: 20px;
		}
		div>div{
			display: list-item;
			list-style-type: square;
			margin-left: 40px;
		}
	</style>
</head>
<body>
<div id="div1">
	疯狂Java体系图书
	<div>疯狂Java讲义</div>
	<div>疯狂Android讲义</div>
	<div>轻量级Java EE企业应用实战</div>
</div>
<div id="div2">
	疯狂Java相关
	<div>疯狂Java联盟</div>
	<div>疯狂软件教育</div>
	<div>疯狂Java实训营</div>
</div>
</body>
</html>

run-in类型的盒模型

run-in模型的盒模型的行为取决于它周围的元素。

  • 如果run-in类型的元素包含一个block类型的元素,那么该run-in类型的元素自动变成block类型。
  • 如果run-in类型的元素相邻兄弟是block类型的元素,那么该run-in类型的元素变成in-line行为,且被自动插入作为其兄弟元素的第一个元素。
  • 在其他情况下,run-in类型的元素被当成block类型。
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> run-in </title>
	<style type="text/css">
		p, span{
			padding:6px;
		}
	</style>
</head>
<body>
	<span style="display: run-in;border:1px solid black;">display: run-in</span>
	<p style="border:2px solid red;">display:block</p>
	<span style="display: run-in;border:1px solid black;">display: run-in</span>
	<p style="border:2px solid red;display:inline">display:inline</p>	
</body>
</html>

对盒添加阴影

使用box-shadow属性为盒模型添加阴影,该属性可用于为整个盒模型添加阴影。

它是一个复合属性,语法格式如下:

box-shadow:hOffset vOffset blurLength spread color inset; 

hOffset:控制阴影在水平方向的偏移。

vOffset:控制阴影在垂直方向的偏移。

blurLength:控制阴影的模糊程度。

spread:控制阴影的缩放程度。

color:控制阴影颜色。

inset:用于将外部阴影改为内部阴影。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> box-shadow属性 </title>
	<style type="text/css">
		div {
			width: 300px;
			height: 50px;
			border: 1px solid black;
			margin: 30px;
		}
	</style>
</head>
<body>
<div style="box-shadow: -10px -8px 6px #444;">
	box-shadow: -10px -8px 6px #444;(左上阴影)</div>
<div style="box-shadow: 10px -8px 6px #444;">
	box-shadow: -10px 8px 6px #444;(右上阴影)</div>
<div style="box-shadow: -10px 8px 6px #444;">
	box-shadow: -10px 8px 6px #444;(左下阴影)</div>
<div style="box-shadow: 10px 8px 6px #444;">
	box-shadow: 10px 8px 6px #444;(右下阴影)</div>
<div style="box-shadow: 10px 8px #444;">
	box-shadow: box-shadow: 10px 8px #444;(右下阴影,不指定模糊程度)</div>
<div style="box-shadow: 10px 8px 20px #444;">
	box-shadow: 10px 8px 20px #444;(右下阴影、增大模糊程度)</div>
<div style="box-shadow: 10px 8px 10px -10px red;">
	box-shadow: 10px 8px 10px -10px red;(右下阴影、缩小阴影区域)</div>
<div style="box-shadow: 10px 8px 20px 15px red;">
	box-shadow: 10px 8px 20px 15px red;(右下阴影、放大阴影区域)</div>
</body>
</html>

对表格及单元格添加阴影

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> box-shadow属性 </title>
	<style type="text/css">
		table {
			width: 500px;
			border-spacing: 10px;
			box-shadow: 10px 10px 6px #444; 
		}
		td {
			box-shadow: 6px 6px 4px #444; 
			padding: 5px;
		}
	</style>
</head>
<body>
<table>
	<tr>
		<td>疯狂Java讲义</td>
		<td>疯狂Android讲义</td>
	</tr>
	<tr>
		<td>轻量级Java EE企业应用实战</td>
		<td>疯狂Android讲义</td>
	</tr>
</table>
</html>

布局相关属性

  • float:控制目标HTML元素是否浮动以及如何浮动。当通过该属性设置某个元素浮动后,该元素将被当作block类型的盒模型处理。浮动HTML元素将会漂浮紧紧跟随它的前一个元素,直到遇到边框、内填充、外边距或block类型的盒模型元素为止。支持left、right两个属性值控制向左右浮动。
  • clear:用于清除HTML元素的向左向右浮动特性。
  • clip:控制对HTML元素进行裁剪。属性值可指定为auto(不裁剪)或rect():定义一个矩形,显示矩形内的区域。
  • overflow:设置当html元素不都容纳内容时的显示方式。
  • overflow-x:只控制水平方向的显示方式。
  • overflow-y:只控制垂直方向的显示方式。
  • overflow-style:设置HTML元素不够容纳时的滚动方式。
  • display:是指目标对象是否显示及如何显示。
  • visibility:设置目标对象是否显示。

float的功能

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> float属性 </title>
	<style type="text/css">
		div {
			border:1px solid black;
			width: 300px;
			height: 80px;
			padding: 5px;
		}		
	</style>
</head>
<body>
<div style="float:left;">
float:left; 浮向左边
</div>
<div style="float:left;">
float:left; 浮向左边
</div>
<hr/>
<div style="float:right;">
float:right; 浮向右边
</div>
<div style="float:right;">
float:right; 浮向右边
</div>
</body>
</html>

通过float属性实现多栏布局

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 多栏布局 </title>
	<style type="text/css">
		div#container {
			width: 960px;
		}
		div>div {
			border: 1px solid #aaf;
			/* 设置HTML元素的width属性包括边框 */
			box-sizing: border-box;
			padding:5px;
		}
	</style>
</head>
<body>
<div id="container">
<!-- float:left;浮向左边 -->
<div style="float:left;width:220px">
<h2>疯狂软件开班信息</h2>
<ul>
	<li>2011年11月10日&nbsp;已满已开班</li>
	<li>2011年12月02日&nbsp;爆满已开班</li>
	<li>2012年02月08日&nbsp;已满已开班</li>
</ul>
</div>
<!-- float:left;浮向左边 -->
<div style="float:left;width:500px;">
<h2>疯狂软件介绍</h2>
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java品牌专注高级软件编程,以“十年磨一剑”的心态打造全国最强(不是之一)疯狂Java学习体系:包括疯狂Java体系原创图书,疯狂Java学习路线图,这些深厚的知识沉淀已被大量高校、培训机构奉为经典。<br/> 
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java怀抱“软件强国”的理想,立志以务实的技术来改变中国的软件教育。经过八年沉淀,疯狂Java强势回归。疯狂Java创始人李刚,携疯狂Java精英讲师团队肖文吉、黄勇等老师将带给广大学习者“非一般”的疯狂。
</div>
<!-- float:left;浮向左边 -->
<div style="float:left;width:240px">
<h2>公司动态</h2>
<ul>
	<li>《疯狂Java讲义》(第3版)上市</li>
	<li>泰豪电网软件公司来校召开现场招聘会</li>
	<li>疯狂学子赴武汉光谷软件园入职</li>
	<li>新华南方来校现场招聘</li>
</ul>
</div>
</div>
</body>
</html>

使用clear属性实现换行

clear属性用于清除HTML元素的浮动,设置HTML元素的左、右是否允许出现浮动元素,支持以下属性值:

  • none:默认值。HTML元素左右都支持浮动特性。
  • left:清除HTML左边的浮动特征,意味着该元素向左浮动时会自动换行。
  • right:清除HTML右边的浮动特征,意味着该元素向右浮动时会自动换行。
  • both:清除HTML两边的浮动特征,意味着该元素两边浮动时会自动换行。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> clear属性 </title>
	<style type="text/css">
		div>div{
			width: 220px;
			padding: 5px;
			margin:2px;
			float:left;
			background-color: #ddd;
		}
	</style>
</head>
<body>
<div>
	<div>疯狂Java联盟</div>
	<div>疯狂软件教育</div>
	<div style="clear:both;">关于我们(设置了clear:both;)</div>
	<div>疯狂成员</div>
</div>
</body>
</html>

上面4个div都设置了float:left属性,这会让他们都浮向左边,如果宽度足够,他们会并排成一排。但由于第三个子div设置了clear:both,这意味着关闭了该元素两边的浮动,所以当该元素向左浮动时会自动换行。

使用overflow设置滚动条

CSS提供了overflow、overflow-x、overflow-y三个属性来控制HTML元素不够容纳内容时的显示方式。

三个属性都支持以下属性值:

  • visible:指定HTML元素既不剪切内容也不添加滚动条,是默认值。
  • auto:指定HTML元素不够容纳内容时将自动添加滚动条,允许用户拖动滚动条查看内容。
  • hidden:指定HTML元素自动裁剪那些不够空间显示的内容。
  • scroll:指定HTML元素总是显示滚动条。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> overflow属性 </title>
	<style type="text/css">
		div {
			width: 300px;
			height: 70px;
			border: 1px solid black;
			white-space: nowrap;
			margin: 15px;
		}
	</style>
</head>
<body>
<div>
	<h3>不设置overflow属性</h3>
	测试文字测试文字测试文字测试文字测试文字测试文字
</div>
<div style="overflow:hidden;">
	<h3>overflow:hidden;</h3>
	测试文字测试文字测试文字测试文字测试文字测试文字
</div>
<div style="overflow:auto;">
	<h3>overflow:auto;</h3>
	测试文字测试文字测试文字测试文字测试文字测试文字
</div>
<div style="overflow-x:hidden">
	<h3>overflow-x:hidden;</h3>
	测试文字测试文字测试文字测试文字测试文字测试文字
</div>
<div style="overflow-y:hidden">
	<h3>overflow-y:hidden;</h3>
	测试文字测试文字测试文字测试文字测试文字测试文字
</div>
</body>
</html>

使用overflow-style控制滚动方式

设置溢出内容的滚动方式。支持如下属性值:

  • auto:让浏览器自主选择滚动方式。
  • scrollbar:为HTML元素添加滚动条。
  • panner:为HTML元素选择合适的关键内容显示。
  • move:允许用户移动元素中的内容。
  • marquee:HTML元素中的内容自动滚动播放。

多栏布局

前面介绍通过float属性或通过display:inline-box来实现多栏布局,但通过这两种方式实现的多栏布局底部无法对齐,此时可以用多栏布局,增加column-count属性即可。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 分栏布局 </title>
	<style type="text/css">
		div#content {
			column-count: 2;
			-moz-column-count: 2;
		}
	</style>
</head>
<body>
<div id="content">
<h2>疯狂软件介绍</h2>
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java品牌专注高级软件编程,以“十年磨一剑”的心态打造全国最强(不是之一)疯狂Java学习体系:包括疯狂Java体系原创图书,疯狂Java学习路线图,这些深厚的知识沉淀已被大量高校、培训机构奉为经典。<br/> 
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java怀抱“软件强国”的理想,立志以务实的技术来改变中国的软件教育。经过八年沉淀,疯狂Java强势回归。疯狂Java创始人李刚,携疯狂Java精英讲师团队肖文吉、黄勇等老师将带给广大学习者“非一般”的疯狂。
</div>
</body>
</html>

使用column-width指定栏宽度

  • columns:复合属性,可同时指定栏目宽度、栏目数两个属性值。
  • column-width:指定一个长度值,用于指定每个栏目的宽度。
  • column-count:指定一个整数值,用于指定栏目数。
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 分栏布局 </title>
	<style type="text/css">
		div#container{
			width: 1100px;
			border: 1px solid black;
		}
		div#content {
			/* 设置栏目数, 以及各栏目的宽度*/
			columns: 240px 3;
			-moz-columns: 240px 3;
		}
	</style>
</head>
<body>
<div id="container">
<div id="content">
<h2>疯狂软件介绍</h2>
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java品牌专注高级软件编程,以“十年磨一剑”的心态打造全国最强(不是之一)疯狂Java学习体系:包括疯狂Java体系原创图书,疯狂Java学习路线图,这些深厚的知识沉淀已被大量高校、培训机构奉为经典。<br/> 
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java怀抱“软件强国”的理想,立志以务实的技术来改变中国的软件教育。经过八年沉淀,疯狂Java强势回归。疯狂Java创始人李刚,携疯狂Java精英讲师团队肖文吉、黄勇等老师将带给广大学习者“非一般”的疯狂。
</div>
</div>
</body>
</html>

使用column-gap和column-rule控制分栏间隔

如果希望指定各栏目之间的间距以及各栏目中间的分隔条,则可通过这两个属性指定。

<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 分栏布局 </title>
	<style type="text/css">
		div#container{
			margin:auto;
			width: 840px;
			border: 1px solid black;
		}
		div#content {
			/* 设置栏目数, 以及各栏目的宽度*/
			columns: 240px 3;
			-moz-columns: 240px 3;
			/* 设置栏目之间的间距*/
			column-gap: 50px;
			-moz-column-gap: 50px;
			/* 设置栏目之间的分隔条*/
			column-rule: 10px inset #aaa;
			-moz-column-rule: 10px inset #aaa;
		}
	</style>
</head>
<body>
<div id="container">
<div id="content">
<h2>疯狂软件介绍</h2>
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java品牌专注高级软件编程,以“十年磨一剑”的心态打造全国最强(不是之一)疯狂Java学习体系:包括疯狂Java体系原创图书,疯狂Java学习路线图,这些深厚的知识沉淀已被大量高校、培训机构奉为经典。<br/> 
&nbsp;&nbsp;&nbsp;&nbsp;疯狂Java怀抱“软件强国”的理想,立志以务实的技术来改变中国的软件教育。经过八年沉淀,疯狂Java强势回归。疯狂Java创始人李刚,携疯狂Java精英讲师团队肖文吉、黄勇等老师将带给广大学习者“非一般”的疯狂。
</div>
</div>
</body>
</html>

使用column-span设置跨栏

有时候需要对元素中大部分内容进行分栏,但又希望控制其中某一部分内容(比如标题)不进行分栏,此时可通过column-span属性进行控制。支持如下两个属性值:

  • 1:默认值,设置该元素直跨一列。
  • all:跨所有列。

使用弹性盒布局

标签:Web,Java,前端,元素,疯狂,HTML,nbsp,div,CSS
来源: https://www.cnblogs.com/zzdshidashuaige/p/14805312.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有