资源描述
HTML+CSS
第一章
1. CSS 基本观念 ;
2. CSS 语法 ;
3. CSS 基本属性;
CSS(Cascading Style Sheets)简介
随着Internet的迅猛发展,HTML被广泛应用,上网的人们当然希望网页做得漂亮些,因此HTML排版和界面效果的局限性日益暴露出来。为了解决这个问题,人们也走了不少弯路,用了一些不好的方法,比如给HTML增加很多的属性结果将代码变得很臃肿,将文本变成图片,过多利用Table来排版,用空白的图片表示白色的空间等。直到CSS出现。
CSS可算是网页设计的一个突破,它解决了网页界面排版的难题。可以这么说,HTML的Tag主要是定义网页的内容(Content),而CSS决定这些网页内容如何显示(Layout)。
CSS的英文是Cascading Style Sheets,中文可以翻译成串联式样式表。
CSS基本语法
一个样式(Style)的语法由三部分构成:Selector(中文叫选择器有点怪怪的,就用英文吧),属性(Property),属性值(Value)。
selector {property: value}
举个例子,下面的代码p就是selector,color就是属性,blue就是属性值。
p {color:blue}
HTML中所有的Tag都可以作为selector。
注:如果你想为Style加多个属性,在两个属性之间要用分号加以分隔。下面的Style就包含2个属性,一个是对齐方式居中,一个字体颜色为红,当中用分号分隔开。
p {text-align:center;color:red}
为了提高Style代码的可读性,你也可以分行写:
p
{
text-align: center;
color: black;
font-family: arial
}
组合(Grouping)
你也可以将相同的属性和属性值赋予多个Selector。Selector之间用逗号分隔。
h1,h2,h3,h4,h5,h6
{
color: red
}
上面的例子是将所有正文标题(<h1>到<h6>)的字体颜色都变成红色。
Class Selector
利用Class Selector,你可以用同样的HTML Tag构成不同的样式。比如说,你希望段落<p>有两种样式,一种是居中对齐,一种是居右对齐。你就可以写如下样式:
p.right {text-align:right}
p.center {text-align:center}
其中right和center就是两个class。然后你就可以引用这两个class,示例代码如下:
<p class="center">这一段居中显示。</p>
<p class="right">这一段是居右显示。</p>
你也可以不用HTML Tag,直接用.加上Class名称作为一个Selector。示例代码如下:
.center {text-align: center}
这种通用的Class Selector就没有Tag的局限性,可以用于不同的Tag。比如:
<h1 class = "center">这个标题居中显示。</h1>
<p class = "center">这个段落居中显示。</p>
CSS注释
为了方便你自己或者他人日后更好地理解你的CSS代码,你可以写CSS代码注释。CSS代码注释以/*开头,以*/结束。
/* 段落样式 */
CSS按其位置可以分成三种:
§ 内嵌样式(Inline Style)
§ 内部样式表(Internal Style Sheet)
§ 外部样式表(External Style Sheet)
内嵌样式(Inline Style)
Inline Style是写在Tag里面的。内嵌样式只对所在的Tag有效。
<P style="font-size:20pt; color:red">这个Style定义<p></p>里面的文字是20pt字体,字体颜色是红色。</p>
显示示例
内部样式表(Internal Style Sheet)
内部样式表是写在HTML的<head></head>里面的。内部样式表只对所在的网页有效。
<HTML>
<HEAD>
<STYLE type="text/css">
H1.mylayout {border-width:1; border:solid; text-align:center; color:red}
</STYLE>
</HEAD>
<BODY>
<H1 class="mylayout"> 这个标题使用了Style。</H1>
<H1>这个标题没有使用Style。</H1>
</BODY>
</HTML>
内部样式表(Internal Sytle Sheet)要用到Style这个Tag,写法如下:
<STYLE type="text/css">
......
</STYLE>
外部样式表(External Style Sheet)
如果很多网页需要用到同样的样式(Styles),用什么方法呢?
将样式(Styles)写在一个以.css为后缀的CSS文件里,然后在每个需要用到这些样式(Styles)的网页里引用这个CSS文件。
<HTML>
<HEAD>
<link href="linkd.css" rel="stylesheet" type="text/css">
</HEAD>
<BODY>
<H1> 这个标题使用了Style。</H1>
</BODY>
</HTML>
使用外部(Extenal)样式表,相对于内嵌(Inline)和内部式(Internal)的,有以下优点:
样式代码可以复用。一个外部CSS文件,可以被很多网页共用。
便于修改。如果要修改样式,只需要修改CSS文件,而不需要修改每个网页。
提高网页显示的速度。如果样式写在网页里,会降低网页显示的速度,如果网页引用一个CSS文件,这个CSS文件多半已经在缓存区(其它网页早已经引用过它),网页显示的速度就比较快。
串联(Cascading)
CSS第一个字母,是Cascading,意为串联。它是指不同来源的样式(Styles)可以合在一起,形成一种样式。
Cascading的顺序是:
§ 浏览器缺省(browser default)(优先级最低)
§ 外部样式表(Extenal Style Sheet)
§ 内部样式表(Internal Style Sheet)
§ 内嵌样式表(Inline Style)(优先级最高)
CSS 基本属性
CSS属性列表
属性名称
字体属性(Font)
font-family使用什么字体
font-style字体是否斜体
font-variant是否用小体大写
font-weight字体的粗细
font-size字体的大小
颜色和背景属性
Color 颜色
Background-color 颜色
Background-image 路径
Background-repeat 背景图片重叠方式Repeat-x、repeat-y、no-repeat
Background-attachment 背景图片是否随滚动条滑动Scroll、Fixed
Background-position 背景图片的位置top、left、right、bottom等
文本属性
Word-spacing单词之间的间距
Letter-spacing字母之间的间距
Text-decoration文字的装饰样式
Vertical-align垂直方向的位置
Text-align 对齐方式
Text-indent 首行的缩进方式
Line-height 文本的行高
边距属性
Margin-top顶端边距
Margin-right右侧边距
Margin-bottom底端边距
Margin-left左侧边距
填充距属性
Padding-top顶端填充距
Padding-right右侧填充距
Padding-bottom底端填充距
Padding-left左侧填充距
边框属性
Border-top-width顶端边框宽度
Border-right-width右侧边框宽度
Border-bottom-width底端边框宽度
Border-left-width左侧边框宽度
Border-width一次定义宽度
Border-color一次定义边框颜色
Border-style设置边框样式
Border-top一次定义顶端
Border-right一次定义右侧
Border-bottom一次定义底端
Border-left一次定义左侧
Width定义宽度属性
Height定义高度属性
Float文字环绕
Clear哪一边没有浮动
分级属性
Display 定义是否显示
White-space怎样处理空白(nowrap不换行)
List-style-type加项目编号
List-style-image加图案
List-style-position第二行起始位置
List-style一次定义列表
伪类
a:link {color: #FF0000} /* 未被访问的链接 红色 */
a:visited {color: #00FF00} /* 已被访问过的链接 绿色 */
a:hover {color: #FFCC00} /* 鼠标悬浮在上的链接 橙色 */
a:active {color: #0000FF} /* 鼠标点中激活链接 蓝色 */
展开阅读全文