首页 > 其他分享 >第七章利用CSS和多媒体美化页面

第七章利用CSS和多媒体美化页面

时间:2024-10-29 09:21:12浏览次数:3  
标签:style 多媒体 img image list 属性 border CSS 页面

7.1 CSS链接的美化


7.1.1.文字链接的美化

在 HTML5 中,<a></a>标签始终定义超链接,用于从一张页面链接到另一张页面<a>元素最重要的属性是 href 属性,它指示链接的目标,如果未设置 href 属性,后续多个属性均无法使用,则只是超链接的占位符。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style>
			#menu{
				text-align: center;
			}
			a{
				margin: 10px;
			}
			a:link{
				font-size: 20px;
			}
			a:hover{
				font-size: 18px;
				color: red;
				text-decoration: overline underline;
			}
			a:active{
				font-size: 20px;
				color: green;
				text-decoration: none;
			}
		</style>
	</head>
	<body>
		<div id="menu">
			<h2>服务中心菜单栏</h2>
			<a href="#" target="_blank">加入我们</a>
			<a href="#" target="_blank">媒体报道</a>
			<a href="#" target="_blank">官方博客</a>
			<a href="#" target="_blank">帮助中心</a>
		</div>
	</body>
</html>


7.1.2.按钮链接的美化

为了让链接外观看起来像按钮特效,设计者会为链接加上不同的边框阴影和相同的背景颜色加以实现。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style>
			#menu{
				text-align: center;
			}
			a{
				margin: 10px;
				font-weight: 700;
				font-size: 20px;
				text-decoration: none;
				color: red;
				padding: 10px 15px;
				border-radius: 30px;
			}
			a:link,a:visited{
				box-shadow: -5px -5px 10px black;
			}
			a:hover{
				font-size: 26px;
			}
			a:active{
				font-size: 20px;
				box-shadow: 6px 6px 10px black;
			}
		</style>
	</head>
	<body>
		<div id="menu">
			<h2>服务中心菜单栏</h2>
			<a href="#" target="_blank">加入我们</a>
			<a href="#" target="_blank">媒体报道</a>
			<a href="#" target="_blank">官方博客</a>
			<a href="#" target="_blank">帮助中心</a>
		</div>
	</body>
</html>


7.1.3背景链接的美化

除了文字链接和按钮链接,设计者还会为链接设置不同的背景颜色或背景图片,实现背景链接。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style>
			#menu{
				text-align: center;
			}
			a{
				margin: -3px;
				font-size: 20px;
				text-decoration: none;
				padding: 10px 15px;
			}
			a:link,a:visited{
				background-color: lightgray;
				color: red;
			}
			a:hover{
				background-color: brown;
				color: white;
			}
			a:active{
				font-weight: 700;
				color:lawngreen;
			}
		</style>
	</head>
	<body>
		<div id="menu">
			<h2>服务中心菜单栏</h2>
			<a href="#" target="_blank">加入我们</a>
			<a href="#" target="_blank">媒体报道</a>
			<a href="#" target="_blank">官方博客</a>
			<a href="#" target="_blank">帮助中心</a>
		</div>
	</body>
</html>

 

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style>
			#menu{
				text-align: center;
			}
			a{
				margin: -3px;
				font-size: 20px;
				text-decoration: none;
				padding: 10px 15px;
			}
			a:link,a:visited{
				/*background-color: lightgray;*/
				color: red;
				background-image: url(img/menu_1.jpg);
			}
			a:hover{
				/*background-color: brown;*/
				color: white;
				background-image: url(img/menu_2.jpg);
			}
			a:active{
				font-weight: 700;
				color:lawngreen;
			}
		</style>
	</head>
	<body>
		<div id="menu">
			<h2>服务中心菜单栏</h2>
			<a href="#" target="_blank">加入我们</a>
			<a href="#" target="_blank">媒体报道</a>
			<a href="#" target="_blank">官方博客</a>
			<a href="#" target="_blank">帮助中心</a>
		</div>
	</body>
</html>

 

鼠标悬浮结果为: 


7.2 CSS列表的美化

在前面的章节中,已经学习了列表的简单知识。列表元素是网页设计中常见的元素,它是HTML中组织多个段落文本的一种方式,可以使信息显示结构清晰、直观,便于理解,多用于新闻、产品,或者是其他内容的罗列等。由于列表如此重要,所以,当引人CSS后设计者就迫切希望,能利用列表许多新的属性,开发出更加丰富的列表样式来。

在 CSS 样式中,主用是通过 list-style-type、list-style-image和 list-style-position 这3个属性改变列表修饰符的类型

7.2.1.列表项类型(list-style-type)

此属性用来设置或检索对象的列表项所使用的标记类型。若ist-style-image属性值为none 或指定ur地址的图片不能被显示时,此属性将发生作用。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			.ceshi{
				list-style-type: disc;
			}
			.houduan{
				list-style-type: decimal;
			}
			.qianduan{
				list-style-type: square;
			}
		</style>
	</head>
	<body>
		<div>
			<h3>测试工程师</h3>
		<ol class="ceshi">
			<li>ab</li>
			<li>bc</li>
			<li>cd</li>
			<li>df</li>
			<li>fg</li>
			<li>gy</li>
			<li>yu</li>
		</ol>
		</div>
		<div>
			<h3>前端开发</h3>
		<ol class="qianduan">
			<li>abf</li>
			<li>bcr</li>
			<li>cdb</li>
			<li>dfh</li>
			<li>fgj</li>
			<li>gyt</li>
			<li>yun</li>
		</ol>
		</div>
		<div>
			<h3>后端开发</h3>
		<ol class="houduan">
			<li>abx</li>
			<li>bcs</li>
			<li>cde</li>
			<li>dfz</li>
			<li>fgs</li>
			<li>gya</li>
			<li>yuq</li>
		</ol>
		</div>
	</body>
</html>


7.2.2.列表项图像(list-style-image)

此属性用来设置或检索对象的列表项标记的图像。

		<style type="text/css">
			.ceshi{
				list-style-image: url(img/list1.jpg);
			}
			.houduan{
				list-style-image: url(img/list2.jpg);
			}
			.qianduan{
				list-style-image: url(img/list3.jpg);
			}
		</style>


7.2.3.列表项位置(list-style-position)

此属性用来设置对象的列表项标记相对于列表项内容的位置。

		<style type="text/css">
			.ceshi{
				list-style-image: url(img/list1.jpg);
				list-style-position: inside;
			}
			.houduan{
				list-style-image: url(img/list2.jpg);
				list-style-position: outside;
			}
			.qianduan{
				list-style-image: url(img/list3.jpg);
			}
			li{
				width: 100px;
				border: 2px solid #000000;
			}
		</style>

		<style type="text/css">
			.qianduan{
				list-style-image: url(img/list3.jpg);
				list-style-position: inside;
			}
			.qianduan li{
				padding-left:10px;
			}
			li{
				width: 100px;
				border: 2px solid #000000;
			}
		</style>
	<body>
		<div>
			<h3>前端开发</h3>
		<ol class="qianduan">
			<li>abf</li>
			<li>bcr</li>
			<li>cdb</li>
			<li>dfh</li>
			<li>fgj</li>
			<li>gyt</li>
			<li>yun</li>
		</ol>
		</div>
	</body>


7.2.4.复合列表样式(list-style)

这个属性是设定列表项样式的一个快捷的综合写法。用这个属性可以同时设置列表项类型属性(list-style-type),列表项图片属性(list-style-image)和列表项位置属性(list-style-position )。
语法:list-style:list-style-typellist-style-positionl list-style-image

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			.ceshi{
				list-style:decimal inside url(img/list1.jpg);;
			}
			.houduan{
				list-style: circle url(img/list2.jpg) outside;
			}
			.qianduan{
				list-style: square url(img/list3.jpg) inside;
			}
			.qianduan li{
				padding-left:10px;
			}
			li{
				width: 100px;
				border: 2px solid #000000;
			}
		</style>
	</head>
	<body>
		<div>
			<h3>测试工程师</h3>
		<ol class="ceshi">
			<li>ab</li>
			<li>bc</li>
			<li>cd</li>
			<li>df</li>
			<li>fg</li>
			<li>gy</li>
			<li>yu</li>
		</ol>
		</div>
		<div>
			<h3>前端开发</h3>
		<ol class="qianduan">
			<li>abf</li>
			<li>bcr</li>
			<li>cdb</li>
			<li>dfh</li>
			<li>fgj</li>
			<li>gyt</li>
			<li>yun</li>
		</ol>
		</div>
		<div>
			<h3>后端开发</h3>
		<ol class="houduan">
			<li>abx</li>
			<li>bcs</li>
			<li>cde</li>
			<li>dfz</li>
			<li>fgs</li>
			<li>gya</li>
			<li>yuq</li>
		</ol>
		</div>
	</body>
</html>


7.2.5.利用背景图像实现列表项标记

虽然使用 list-style-image 属性很容易实现设置列表项图像的目的,但这个属性不能够控制图像替换的项目符号距离文字的位置。因此,可以利用 background-image 加以实现。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			li{
				list-style-type: none;
				background: url(img/list4.jpg) no-repeat;
				padding-left: 25px;
				padding-bottom: 10px;
			}
		</style>
	</head>
	<body>
		<h3>快递公司</h3>
		<ol>
			<li>XX快递</li>
			<li>XX快递</li>
			<li>XX快递</li>
			<li>XX快递</li>
			<li>XX快递</li>
			<li>XX快递</li>
		</ol>
	</body>
</html>


7.3 CSS表格的美化

常用网页的布局形式是DIV+CSS,但并不是所有的布局都是如此,必要时,表格的使用对零散内容的汇总分类更为便利。所以,尽管在前面的章节中已经学习了表格的基本用法,但是设计者需要利用CSS设置表格样式的多样化,进而美化表格的外观。


7.3.1.border-collapse

border-collapse属性设置表格的边框是否被合并为一个单一的边框,还是按照标准的HTML 中那样分开显示。
语法:border-collapse:separatelcollapselinherit
参数:separate 是默认值,边框分开不合并,不会忽略border-spacing和empty-cells属性。collapse边框合并,如果相邻,则共用一个边框,会忽略border-spacing和empty-cells属性。Inherit是从父元素继承值。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			table{
				border-collapse: collapse;
			}
			table,td,th{
				border: 1px solid black;
			}
		</style>
	</head>
	<body>
		<table>
			<tr>
				<th>课程</th>
				<th>学分</th>
				<th>考试形式</th>
			</tr>
			<tr>
				<td>SQL数据库链接</td>
				<td>4.0</td>
				<td>笔试</td>
			</tr>
			<tr>
				<td>PHP程序设置</td>
				<td>6.0</td>
				<td>机考</td>
			</tr>
		</table>
	</body>
</html>


7.3.2..border-spacing

border-spacing属性作用等同于标签属性cellspacing,即当表格边框独立时(border-cdlapse属性等于separate),相邻单元格边框之间的横向和纵向的间距。
语法:border-spacing:length
参数:length由数字和单位组成的长度值,不允许负值。如果提供全部两个length值时第一个作用于横向间距,第二个作用于纵向间距。如果只提供一个length值时,这个值将同时作用于横向和纵向上的间距。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			table{
				border-collapse: collapse;
			}
			table,td,th{
				border: 1px solid black;
			}
			.one{
				border-collapse: separate;
				border-spacing: 10px;
			}
			.two{
				border-collapse: separate;
				border-spacing: 10px 30px;
			}
		</style>
	</head>
	<body>
		<table class="one">
			<tr>
				<th>课程</th>
				<th>学分</th>
				<th>考试形式</th>
			</tr>
			<tr>
				<td>SQL数据库链接</td>
				<td>4.0</td>
				<td>笔试</td>
			</tr>
			<tr>
				<td>PHP程序设置</td>
				<td>6.0</td>
				<td>机考</td>
			</tr>
		</table>
		<br />
	<table class="two">
		<tr>
			<td>大数据</td>
			<td>物联网</td>
		</tr>
		<tr>
			<td>云计算</td>
			<td>人工智能</td>
		</tr>
	</table>
	</body>
</html>


7.3.3.caption-side

caption-side属性设置或检索表格标题在表格的哪一边,此属性必须和表格的caption标签同时使用。
语法:caption-side:toplright l bottom l left
参数:top是默认值,指定标题在表格上边。right指定标题在表格右边。bottom指定标题在表格下边。lef 指定标题在表格左边。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			.cap{
				caption-side: bottom;
			}
			table,th,td{
				border: 1px solid black;
			}
		</style>
	</head>
	<body>
		<table class="cap">
			<caption><h2>值班表</h2></caption>
			<tr>
				<th>时间</th>
				<th>值日生</th>
			</tr>
			<tr>
				<td>08:00-12:00</td><td>张红敏</td>
			</tr>
			<tr>
				<td>14:00-17:00</td><td>李凯全</td>
			</tr>	
			<tr>
				<td>19:00-22:00</td><td>曾天毅</td>
			</tr>
		</table>
	</body>
</html>


7.3.4.empty-cells

empty-cells 属性设置或检索当表格的单元格无内容时,是否显示该单元格的边框。只有当表格边框独立时(即border-collapse属性等于separate)此属性才起作用。语法:empty-cells:showlhide
参数:show是默认值,指定当表格的单元格无内容时,显示该单元格的边框。bide指定当表格的单元格无内容时,隐藏该单元格的边框。

​
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			table,th,td{
				border: 1px solid black;
			}
			.emp{
				border-collapse: separate;
				empty-cells: hide;
			}
		</style>
	</head>
	<body>
		<table class="emp">
			<tr>
				<td>有内容的单元格</td>
				<td>有内容的单元格</td>
			</tr>
			<tr>
				<td>有内容的单元格</td>
				<td></td>
			</tr>
			<tr>
				<td>有内容的单元格</td>
				<td>有内容的单元格</td>
			</tr>
		</table>
	</body>
</html>

​


7.4 多媒体的添加与美化

本节将简单介绍<embed>、<bgsound><audio>、<video>标签在网页中的应用。


7.4.1.<embed>标签的使用

利用<embed>标签可以在网页中插人各种类型的多媒体文件,如 WMV、MP3、AVIMP4、SWF、MOV、RMVB 等。但是在使用<embed>标签之前,需要安装相应的插件,否则多媒体文件不能正常播放。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<body>
		<h1>插入动画:阳春三月</h1>
		<embed src="img/media/阳春三月.swf"></embed>
		<h1>插入音频:听!是谁在唱歌</h1>
		<embed src="img/media/听!是谁在唱歌.mp3"></embed>
		<h1>插入视频:第五空间</h1>
		<embed src="img/media/第五空间.mp4"></embed>
	</body>
</html>

 


7.4.2.<bgsound>标签的使用

<bgsound>是正浏览器中设置网页背景音乐的元素,利用它可以将音乐文件嵌入到网页中又不占页面空间,可以播放的声音文件格式包括 WAV、AU、MIDI、MP3 等.


7.4.3.HTML5新增的多媒体标签

以前大多数音频、视频是通过插件(例如Flash)来播放的,然而并非所有的浏览器拥有同样的插件。
HTML5 新增了 audio 和 video 元素,分别用来插入声音和视频。至于格式,只要使用文持 HTML5 的浏览器就可以了,不需要使用其他的任何插件。


7.4.3.1.<audio>标签

<audio>标签定义声音,比如音乐或其他音频流,此标签默认是隐藏的。

<h1>audio标签插入音频</h1>
<audio src="img/media/铃铛.mp3" controls="controls"></audio>


7.4.3.2.<video>标签

<video>标签定义视频,例如电影片段或其他视频流,<video>标签在页面中嵌入视频的代码格式和<audio>标签的使用相似。

<h1>video标签插入视频</h1>
<video src="img/media/第五空间.mp4" controls="controls"></video>

 


7.5 综合案例——海洋旅游胜地

本章综合前面学习的CSS和多媒体知识,可以利用链接、列表、表格和多媒体制作并美化网页。本章项目页面布局要求如下:
页面要求有外层的 div-al,内层按照顺序嵌套4块区域,分别为div-top、div-menu、div-lef 和 div-night。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>海洋旅游胜地</title>
		<style type="text/css">
			body{
				background-image :url(img/bg-0.jpg);
			}
			.all{
				margin :0px auto;
				width :700px ;
				height :600px ;
				background-image : url(img/bg.jpg);
			}
			.top{
				width :700px ;
				height : 100px ;
				background-image :url(img/top.jpg)
			}
			.menu{
				width :700px ;
				height : 60px ;
				text-align : center;
			}
			
			.left,.right{
				width :350px ;
				height :440px ;
				float : left ;
			}
			a{
				font-size : 13px ;
				font-weight :700;
				text-decoration :none ;
				background-color : lightcyan ;
				color : red ;
				margin : 20px ;
				padding : 10px 15px;
				border-radius : 10px ;
			}
			a:link,a:visited{
				box-shadow:6px 6px 10px black ;
			}
			a:hover{
				font-size :14px;
			}
			a:active{
				font-size:13px;
				box-shadow:-5px -5px 10px black;
			}
			h3{
				color: brown;
			}
			ol{
				list-style-image :url(img/list2.jpg);
				list-style-type: upper-alpha;
			}
			table{
				border-collapse : separate ;
				border-spacing:20px;
			}
			p{
				text-indent :2em ;
				line-height :22px ;
				font-weight:700;
				color : brown ;
			}
		</style>
	</head>
	<body>
		<div class = " all" >
		<div class = " top" ></div>
		<div class = " menu" >
		<br>
			<a href="#" target="_blank">交通路况</a>
			<a href="#" target="_blank">娱乐设施</a>
			<a href="#" target="_blank">美食特产</a>
			<a href="#" target="_blank">历史文化</a>
			<a href="#" target="_blank">注意事项</a>
			</div>
			<div class="left">
			<h3>新闻动态</h3>
			<ol>
			<li>英比奥山顶景区</li>
			<li>新加坡空中缆车</li>
			<li>天际线斜坡滑车</li>
			<li>圣淘沙名胜世界</li>
			<li>海洋馆和水上探险乐园</li>
			</ol>
			<video src ="img/media/第五空间.mp4" width="320px" height ="250px" controls="controls">
			</video>
			</div>
			<div class="right">
			<table>
			<tr>
				<td><img src ="img/table1.jpg"/></td>
				<td><img src ="img/table2.jpg"/></td>
				</tr>
				<tr>
				<td><img src = "img/table3.jpg" /></td>
				<td><img src="img/table4.jpg" /></td>
				</tr>
				</table>
				<p>这里不过是个平凡的小岛,岛上居民过着简单质朴的生活。当新加坡政府正式收回这个小岛时,决定将它改造成一个休闲度假的胜地。</p>
				<br><br><br>
				<audio src="img/media/铃铛.mp3" controls =" controls" loop=" loop" ></audio>
				</div>
				</div>
	</body>
</html>

标签:style,多媒体,img,image,list,属性,border,CSS,页面
From: https://blog.csdn.net/2302_81317864/article/details/143138022

相关文章