css----未完待续

1.css基础应用

1.1 css样式编写规则

样式表的基本结构

<head>
	<style type="text/css">
			input{border:1px solid blue;background-color:yellow;}
			.btn{color:red;font-size:30px;font-family:隶书;}
	</style>	
</head>

样式规则
input(选择器){border(属性):1px solid blue(值);background-color:yellow;}(声明块)
所有HTML语言中的标记都是通过不同的CSS选择器进行控制的,用户只需要通过选
择器对不同的HTML标签进行控制,并赋予各种样式声明即可实现各种效果

1.2.CSS中的四种核心选择器

1.2.1 CSS 元素选择器

最常见的 CSS 选择器是元素选择器。换句话说,文档的元素就是最基本的选择器。

如果设置 HTML 的样式,选择器通常将是某个 HTML 元素,比如 p、h1、em、a,甚至可以是 html 本身:

html {color:black;}
h1 {color:blue;}
h2 {color:silver;}

可以将某个样式从一个元素切换到另一个元素。
假设您决定将上面的段落文本(而不是 h1 元素)设置为灰色。只需要把 h1 选择器改为 p:

html {color:black;}
p {color:gray;}
h2 {color:silver;}

类型选择器

在 W3C 标准中,元素选择器又称为类型选择器(type selector)。

“类型选择器匹配文档语言元素类型的名称。类型选择器匹配文档树中该元素类型的每一个实例。”

下面的规则匹配文档树中所有 h1 元素:

h1 {font-family: sans-serif;}

因此,我们也可以为 XML 文档中的元素设置样式:
XML 文档:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/css" href="note.css"?>
<note>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>

CSS 文档:

note
  {
  font-family:Verdana, Arial;
  margin-left:30px;
  }

to
  {
  font-size:28px;
  display: block;
  }

from
  {
  font-size:28px;
  display: block;
  }

heading
  {
  color: red;
  font-size:60px;
  display: block;
  }

body
  {
  color: blue;
  font-size:35px;
  display: block;
  }

1.2.2 CSS 类别选择器–应用到多个不同标签

在 CSS 中,类选择器以一个点号显示:

.center {text-align: center}

在上面的例子中,所有拥有 center 类的 HTML 元素均为居中。

在下面的 HTML 代码中,h1 和 p 元素都有 center 类。这意味着两者都将遵守 “.center” 选择器中的规则。

<h1 class="center">
This heading will be center-aligned
</h1>

<p class="center">
This paragraph will also be center-aligned.
</p>

注意:类名的第一个字符不能使用数字!它无法在 Mozilla 或 Firefox 中起作用。

和 id 一样,class 也可被用作派生选择器:

.fancy td {
	color: #f60;
	background: #666;
	}

在上面这个例子中,类名为 fancy 的更大的元素内部的表格单元都会以灰色背景显示橙色文字。(名为 fancy 的更大的元素可能是一个表格或者一个 div)

元素也可以基于它们的类而被选择:

td.fancy {
	color: #f60;
	background: #666;
	}

在上面的例子中,类名为 fancy 的表格单元将是带有灰色背景的橙色。

<td class="fancy">

你可以将类 fancy 分配给任何一个表格元素任意多的次数。那些以 fancy 标注的单元格都会是带有灰色背景的橙色。那些没有被分配名为 fancy 的类的单元格不会受这条规则的影响。
还有一点值得注意,class 为 fancy 的段落也不会是带有灰色背景的橙色,当然,任何其他被标注为 fancy 的元素也不会受这条规则的影响。这都是由于我们书写这条规则的方式,这个效果被限制于被标注为 fancy 的表格单元(即使用 td 元素来选择 fancy 类)。

1.2.3 CSS id选择器—独一无二的元素

id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。

id 选择器以 “#” 来定义。

下面的两个 id 选择器,第一个可以定义元素的颜色为红色,第二个定义元素的颜色为绿色:

#red {color:red;}
#green {color:green;}

下面的 HTML 代码中,id 属性为 red 的 p 元素显示为红色,而 id 属性为 green 的 p 元素显示为绿色。

<p id="red">这个段落是红色。</p>
<p id="green">这个段落是绿色。</p>

注意:id 属性只能在每个 HTML 文档中出现一次。

id 选择器和派生选择器

在现代布局中,id 选择器常常用于建立派生选择器。

#sidebar p {
	font-style: italic;
	text-align: right;
	margin-top: 0.5em;
	}

上面的样式只会应用于出现在 id 是 sidebar 的元素内的段落。这个元素很可能是 div 或者是表格单元,尽管它也可能是一个表格或者其他块级元素。它甚至可以是一个内联元素,比如 或者 ,不过这样的用法是非法的,因为不可以在内联元素 中嵌入

(如果你忘记了原因,请参阅 XHTML:网站重构)。

一个选择器,多种用法

即使被标注为 sidebar 的元素只能在文档中出现一次,这个 id 选择器作为派生选择器也可以被使用很多次:

#sidebar p {
	font-style: italic;
	text-align: right;
	margin-top: 0.5em;
	}

#sidebar h2 {
	font-size: 1em;
	font-weight: normal;
	font-style: italic;
	margin: 0;
	line-height: 1.5;
	text-align: right;
	}

在这里,与页面中的其他 p 元素明显不同的是,sidebar 内的 p 元素得到了特殊的处理,同时,与页面中其他所有 h2 元素明显不同的是,sidebar 中的 h2 元素也得到了不同的特殊处理。

单独的选择器

id 选择器即使不被用来创建派生选择器,它也可以独立发挥作用:

#sidebar {
	border: 1px dotted #000;
	padding: 10px;
	}

根据这条规则,id 为 sidebar 的元素将拥有一个像素宽的黑色点状边框,同时其周围会有 10 个像素宽的内边距(padding,内部空白)。老版本的 Windows/IE 浏览器可能会忽略这条规则,除非你特别地定义这个选择器所属的元素:

div#sidebar {
	border: 1px dotted #000;
	padding: 10px;
	}

1.2.4 伪类选择器

CSS 伪类用于向某些选择器添加特殊的效果。

1.2.4.1 语法

伪类的语法:

selector : pseudo-class {property: value}

CSS 类也可与伪类搭配使用。

selector.class : pseudo-class {property: value}
1.2.4.2 锚伪类

在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示,这些状态包括:活动状态,已被访问状态,未被访问状态,和鼠标悬停状态。

a:link {color: #FF0000}		/* 未访问的链接 */
a:visited {color: #00FF00}	/* 已访问的链接 */
a:hover {color: #FF00FF}	/* 鼠标移动到链接上 */
a:active {color: #0000FF}	/* 选定的链接 */

提示:在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。

提示:在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。

提示:伪类名称对大小写不敏感。

1.2.4.3 伪类与 CSS 类

伪类可以与 CSS 类配合使用:

a.red : visited {color: #FF0000}

<a class="red" href="css_syntax.asp">CSS Syntax</a>

假如上面的例子中的链接被访问过,那么它将显示为红色。

1.2.4.4 CSS2 - :first-child 伪类

您可以使用 :first-child 伪类来选择元素的第一个子元素。这个特定伪类很容易遭到误解,所以有必要举例来说明。考虑以下标记:

<div>
<p>These are the necessary steps:</p>
<ul>
<li>Intert Key</li>
<li>Turn key <strong>clockwise</strong></li>
<li>Push accelerator</li>
</ul>
<p>Do <em>not</em> push the brake at the same time as the accelerator.</p>
</div>

在上面的例子中,作为第一个元素的元素包括第一个 p、第一个 li 和 strong 和 em 元素。

给定以下规则:

p:first-child {font-weight: bold;}
li:first-child {text-transform:uppercase;}

第一个规则将作为某元素第一个子元素的所有 p 元素设置为粗体。第二个规则将作为某个元素(在 HTML 中,这肯定是 ol 或 ul 元素)第一个子元素的所有 li 元素变成大写。

请访问该链接,来查看这个 :first-child 实例的效果。

提示:最常见的错误是认为 p:first-child 之类的选择器会选择 p 元素的第一个子元素。

注释:必须声明 <!DOCTYPE>,这样 :first-child 才能在 IE 中生效。/

1.2.4.5 CSS2 - :lang 伪类

:lang 伪类使你有能力为不同的语言定义特殊的规则。在下面的例子中,:lang 类为属性值为 no 的 q 元素定义引号的类型:

<html>
<head>
<style type="text/css">
q:lang(no){quotes: "~" "~"}
</style>
</head>
<body>
<p>文字<q lang="no">段落中的引用的文字</q>文字</p>
</body></html>

//显示的结果:文字"段落中的引用的文字"文字

1.3 选择器的集体声明和嵌套

集体声明:
使用场合
1.如果某些选择器的风格完全或部分相同时,可以采用集体声明的方式减少样式代码
2.注意问题:以逗号隔开选择器
3.实例

<head>
		<style type="text/css">
			h1,h2,h3,#one{color:red;}
			</style>
	</head>
	<body>
			<h1>集体声明1</h1>
			<h1>集体声明2</h1>
			<h1>集体声明3</h1>
			<div id="one">div集体声明</div>
	</body>

选择器的嵌套
作用:选择器的嵌套可以对特殊位置的HTML标签样式进行声明

					<div id="navList">
					<ul>
						<li><a href="#">首页</a></li>
						<li><a href="#">.NET集合</a></li>
						<li><a href="#">热门直播</a></li>
						<li><a href="#">本周课表</a></li>
						<li><a href="#">给讲师留言</a></li>
					</ul>
				</div>
#navList ul{margin:0px;padding: 0px;font-family: "微软雅黑";}
#navList li{list-style:none;float:left;}
#navList a{padding:10px 10px 10px 10px}	

1.4.使用CSS设定文本样式

常用文本属性列表

文本属性属性说明
font-size字体大小
font-family字体类型
font-style字体样式
color设置或检索文本的颜色
text-align文本对齐
font-weight文本粗细
text-decoration文本下划线
line-height文本的行间距
letter-spacing字间距

实例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			#txtStyle
			{color:seagreen;
			text-decoration: underline;
			font-family: "微软雅黑";
			font-weight: bold;
			line-height: 35px;
			font-size:18px;
			}
			</style>
	</head>
	<body>
			<div id="txtStyle">
				床前明月光,<br />
				疑是地上霜。<br />
				举头望明月,<br />
				低头思故乡。<br />
			</div>
	</body>
</html>

1.5.使用CSS动态设置背景图

常用背景属性列表

背景属性属性说明
background-color设置元素的背景颜色。
background-image把图像设置为背景。
background-position设置背景图像的起始位置。
background-repeat设置背景图像是否及如何重复。

特别说明
1.背景图片的位置:为了减少HTTP请求的次数,在网页中有时需要将较多的小图片放在一张较大的图片中,然后用背景图片位置属性background-position来定位要显示的图片,可以用绝对定位和相对定位来表示。
2.background-position:10px 20px;表示从该图片左边10px,上边20px算起
3.background-position:10% 205;表示从该图片左边10%,上边20%算起
实例

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
#bgstyle1
{
	width:360px;
	height:74px;
	background-image:url(../../Pictures/timg.jpg);
	background-position:-76px -23px;
	
	
}

</style>
</head>

<body>
	<div id="bgstyle1"></div>
	
</body>
</html>

1.6 使用css设置图片样式

实例、

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
img{
	width:200px;
	height:100px;
	border:2px solid red;
}
</style>
</head>
<body>	
	<img src="../../Pictures/111 - 副本.jpg"/>	
</html>

1.7 使用css设置文本框样式

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.myinput1
{
	border:1px solid #000000;
	background-color:#FFCCCC;
	font-size:14px;
}
.myinput2
{
	border:0px;
	font-size:14px;
	border-bottom:1px solid #000000;
}

</style>
</head>

<body>
	<div id="one">
	用户名:<input class="myinput1" type="text" name="userName" size="20"/><br /><br />
	密码:<input class="myinput2" type="password" name="userPwd" size="20"/>
	
	</div>
	
</html>

1.8 使用css设置图片按钮

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.imagebtn
{
background-image:url(../../Pictures/timg.jpg);
width:360px;
height:74px;
background-position:-76px -23px;
}
</style>
</head>

<body>
	<input type="button" class="imagebtn" name="btnDownlowd"/>
</body>
</html>

1.9 表格的基本美化

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.sellTable{border:1px solid blue ;border-collapse:collapse;}
.sellTable caption
{	
	border:2px solid  #7DD5FF;
	padding:8px;
	background-color:#CBF3F1;
	font-family:"微软雅黑";
	font-size:16px;
	letter-spacing:5px;
}
.sellTable th
{
	border:2px solid #7DD5FF;
	padding:8px;
	background-color:#FFFFCC;
	font-size:14px;
	text-align:center;
}
.sellTable td
{
	border:2px solid #7DD5FF;
	padding:8px;
	font-size:14px;
	text-align:center;
}
.sellTable tr.altrow
{
	background-color:#FFFFCC;
}
</style>
</head>

<body>
	<table class="sellTable">
		<caption>销售业绩</caption>
		<tr>
			<th>业务员</th>
			<th>一月份</th>
			<th>二月份</th>
			<th>三月份</th>
			<th>四月份</th>
			<th>五月份</th>
			<th>六月份</th>
		</tr>
		<tr >
			<td>王小明</td>
			<td>5000</td>
			<td>5500</td>
			<td>4000</td>
			<td>7000</td>
			<td>6000</td>
			<td>7000</td>
		</tr>
		<tr class="altrow">
			<td>张三</td>
			<td>5000</td>
			<td>5500</td>
			<td>4000</td>
			<td>7000</td>
			<td>6000</td>
			<td>7000</td>
		</tr>
		<tr>
			<td>李四</td>
			<td>5000</td>
			<td>5500</td>
			<td>4000</td>
			<td>7000</td>
			<td>6000</td>
			<td>7000</td>
		</tr>
		<tr class="altrow">
			<td>王五</td>
			<td>5000</td>
			<td>5500</td>
			<td>4000</td>
			<td>7000</td>
			<td>6000</td>
			<td>7000</td>
		</tr>
	</table>
</body>
</html>

2 DIV+CSS网页布局之盒子模型

2.1 网页布局与div标签

在这里插入图片描述<div>标记与<span>标记
在这里插入图片描述在这里插入图片描述

2.2 基于CSS3盒子模型的理论分析

盒子模型概念:
页面中所有元素都可以看成是一个“矩形”,占据着一定的页面空间,这些被占用的空间一般都比单纯的内容要大,这个“矩形框”就是盒子。
生活中的例子
在这里插入图片描述盒子模型的组成
在这里插入图片描述

2.3 基于CSS3盒子模型的应用体验

标准盒子模型:
在网页的最顶端添加DOCTYPE说明即可统一浏览器的解析标准。

盒子模型差异解决的其它方法:
在这里插入图片描述

2.4 border和padding详解

border边框
padding内边距:内容与边框的距离

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
div{
	width:300px;
	height:200px;
	border:2px dotted darkblue;
	color:#FF0000;
	padding:50px;
}
</style>
</head>

<body>
	<div>border详解</div>
</body>
</html>

2.5 margin详解

作用:用于控制块与块之间的距离
块元素之间的左右margin
块之间的距离=margin-left+margin-right

块元素之间的上下margin
在这里插入图片描述子块元素–div的嵌套

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>margin详情</title>
<style type="text/css">
	#div1{
	width:300px;
	height:200px;
	border:20px solid groove;
	}
	#div2{
	width:200px;
	height:100px;
	border:1px solid blue;
	margin:10px;
	background-color:yellow;
	}
</style>
</head>

<body>
<div id="div1"><div id="div2">子块元素</div></div>

</body>
</html>

2.6 使用float定位元素

在这里插入图片描述
当用到margin-left时,display:inline可用于解决浏览器不兼容的问题。

div高度显示问题

height:auto;overflow:hidden;使得容器根据内容的高度动态改变自身的高度

clear属性的使用
如何将子元素强制换行
在这里插入图片描述

2.7 position与z-index

在这里插入图片描述在这里插入图片描述
在这里插入图片描述z-index值越大,div离我越近。

2.8 导航条的制作详解

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<link href="navBar.css" type="text/css" rel="stylesheet"/> 
</head>

<body>
	<div id="globallink">
		<ul>
			<li><a href="#">读书首页</a></li>
			<li><a href="#">作品总库</a></li>
			<li><a href="#">VIP作品</a></li>
			<li><a href="#">完成作品</a></li>
			<li><a href="#">编辑推荐</a></li>
			<li><a href="#">精华作品</a></li>
			<li><a href="#">排行版</a></li>
			<li><a href="#">出版基地</a></li>
			<li><a href="#">出版展示</a></li>
		</ul>
	</div>
</body>
</html>
body{font-size:12px;}
#globallink{
width:800px;
height:44px;
background-image:url(../../Pictures/navbg.png);
}
#globallink ul{list-style:none;padding-top:13px;margin:0px;}
#globallink li
{ 
   float:left;
   width:70px;
   text-align:center;
}
#globallink a{
clear:both;
dispaly:block;
height:5px;
padding-top:5px;
text-decoration:none;

}
#globallink a:link,#globallink a:visited{color:#000066;}
#globallink a:hover{color:#993300;}

3 网页设计实践

3.1 网页布局的基本形式

网站设计基本流程
在这里插入图片描述

在这里插入图片描述
双栏、三栏布局在pc端更常用
典型三栏网页布局的实现
在这里插入图片描述实现效果
在这里插入图片描述

3.2 DIV和CSS网页布局基础实践

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<link href="index.css" rel="stylesheet" type="text/css" />
</head>

<body>
	<div id="container">
		<div id="logo"></div>
		<div id="navLink"></div>
		
		<div id="leftContent"></div>
		<div id="middleContent"></div>
		<div id="rightContent"></div>
		
		<div id="footer"></div>
	</div>
</body>
</html>
body{margin:0px;padding:0px;font-size:12px;text-align:center;}

/*网页主体容器设置*/
#container{
width:950px;
margin:0 auto 0 auto;
text-align:left;
}
#logo{width:950px;height:50px;background-color:#3366CC;float:left;}
#navLink{width:950px;height:40px;background-color:#FFCC00;margin:10px 0px 10px 0px;float:left;}

/*主体左边、中间、右边*/
#leftContent{width:188px;height:300px;background-color:#B0D8FF;border:1px solid #0099FF;float:left;margin-right:10px;}
#middleContent{width:538px;height:300px;background-color:#B0D8FF;border:1px solid #0099FF;float:left;margin-right:10px;}
#rightContent{width:198px;height:300px;background-color:#B0D8FF;border:1px solid #0099FF;float:left;}

/*脚注部分*/
#footer{width:950px;height:80px;background-color:#FF9933;float:left;margin-top:10px;}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值