CSS的样式规则
CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明:
选择器通常是您需要改变样式的 HTML 元素。
每条声明由一个属性和一个值组成。
属性(property)希望设置的样式属性(style attribute)。
CSS加载的方式
1.引入外部文件
<link href="outer.css" rel="stylesheet" type="text/css"></link>
HTML文档中使用<link>
元素引入外部样式文件,引入外部样式文件应在<head>
元素中增加<link>
子元素。
2.导入外部样式单
<style type="text/css">
@import "../outer.css";
@import url('outer.css');
</style>
导入外部样式表单需要在<style>
元素中执行@import
进行导入。
3.使用内部CSS样式
一般来说我们不建议使用内部 CSS 样式:
- 复用性小。
- 导致HTML文档过大,会导致网络负载严重。
- 修改整站风格时,需要对每个网页文件进行样式修改。
4.使用内联CSS样式
内联样式只对单个标签有效,不会影响整个文件。
在 HTML 元素中使用 style 属性定义内联样式。
<div style="property1:value1;property2:value2;"/>
内联元素和区块元素简介
我们在之前的练习中发现,HTML标签具有不同的特性。
实际上,我们可以将HTML元素分为两大类:区块元素和内联元素。
区块元素
-
总是在新的一行上显示。
-
高度、行高、宽度、内边距、外边距等都是可控制的。
-
高度默认为0,是根据元素内的内容而决定的,宽度是父元素的宽度,但是可以通过css控制它,显示的指定他的宽度和高度,可以利用浮动和定位来将他与其他的块元素也显示在一行上。
-
实例:
<h1>
,<p>
,<ul>
,<table>
。
内联元素
-
内联元素和其他的元素显示在一行上。
-
上下边距、高度,宽度都是不可改变的,他的宽度是根据他的显示文本和图像的宽度。
-
实例:
<b>
,<td>
,<a>
,<img>
。
常用的内联元素
- a - 锚点
- em - 强调
- img - 图片
<div>
元素
-
HTML
<div>
元素是块级元素,它可用于组合其他HTML元素的容器。 -
<div>
元素没有特定的含义。由于它属于块级元素,浏览器会在其前后显示换行。 -
如果与 CSS 一同使用,
<div>
元素可用于对大的内容块设置样式属性。
<span>
元素
- HTML
<span>
元素是内联元素,可用作文本的容器 <span>
元素也没有特定的含义。- 当与 CSS 一同使用时,
<span>
元素可用于为部分文本设置样式属性。
通配符选择器
使用"*"表示通配符,用来选择页面所有元素的样式。
*{ margin:0;
padding:0;}
类选择器
类选择器指定的样式对指定class属性的元素起作用。使用“.”标识一个类选择符,类名可以任意。
.myclass{...}
选择器
ID选择器中的样式会对具有指定id属性的HTML元素起作用。
HTML元素以id属性来设置id选择器,CSS中id选择器以"#"来定义。
需要注意的是id在HTML文档中具有唯一性,是不可以重复的。
#idValue{ ...}
包含选择器
包涵选择器用于指定处于某个选择器对应的内部元素。
h1 em {color:red;}
子选择器
子选择器要求目标选择器必须作为外部选择器对应的元素的直接子元素。
parent>child{width: 200px; height: 35px;}
群组选择器
群组选择器使用逗号对选择符进行分隔。
我们可以将逗号读成“和”。
h1,p,myClass,#main{
font-size:20px;
}
伪类
CSS伪类是添加到选择器的关键字,指定要选择的元素的特殊状态。例如,:hover
将在用户悬停在选择器指定的元素上时应用样式。
a:hover
a:link
a:visited
a:hover
a:active
注意:在CSS定义中,a:hover必须被置于a:link和a:visited之后,a:active必须被置于
a:hover之后,才是有效的。伪类的名称不区分大小写。
12月14日笔记
first-child伪类
:first-child
CSS 伪类代表了一组兄弟元素中的第一个元素。被匹配的元素需要具有一个父级元素。first-line伪类
"first-line" 伪元素用于向文本的首行设置特殊样式。
font properties
color properties
background properties
word-spacing
letter-spacing
text-decoration
vertical-align
text-transform
line-height
clear
before伪类
颜色是由红(RED),绿(GREEN),蓝(BLUE )光线的显示结合。
CSS的颜色可以通过以下等方法指定:十六进制颜色、RGB颜色、RGBA颜色、颜色名等值指定。
十六进制颜色值
所有主要浏览器都支持十六进制颜色值。
指定一个十六进制的颜色其组成部分是:#RRGGBB,其中RR(红色),GG(绿色)和BB(蓝色)。所有值必须介于0和FF之间。
例如,#0000FF值呈现为蓝色,因为蓝色的组成设置为最高值(FF)而其他设置为0。
p
{
background-color:#ff0000;
}
RGB颜色值
RGB颜色值在所有主要浏览器都支持。
RGB颜色值指定:RGB(红,绿,蓝)。每个参数(红色,绿色和蓝色)定义颜色的亮度,可在0和255之间,或一个百分比值(从0%到100%)之间的整数。
例如RGB(0,0,255)值呈现为蓝色,因为蓝色的参数设置为最高值(255)而其他设置为0。
此外,下面的值定义相同的颜色:RGB(0,0,255),RGB(0%,0%,100%)。
p
{
background-color:rgb(255,0,0);
}
3.RGBA颜色值
RGBA 颜色值被IE9, Firefox3+, Chrome, Safari,和Opera10+支持。
RGBA 颜色值是 RGB 颜色值 alpha 通道的延伸 - 指定对象的透明度。
RGBA 颜色值指定:RGBA(红,绿,蓝,alpha)。 Alpha 参数是一个介于0.0(完全透明)和1.0(完全不透明)之间的参数。
p
{
background-color:rgba(255,0,0,0.5);
}
背景颜色
背景图片
背景平铺重复设置

背景图片固定
body{background-attachment: fixed;}
背景图片定位
background-position
属性改变图像在背景中的位置。
背景图片大小
背景的简写属性
为了简化这些属性的代码,我们可以将这些属性合并在同一个属性中.
background: red url('')no-repeat fixed center center
文本的颜色
颜色属性被用来设置文字的颜色。
颜色是通过CSS最经常的指定:
- 十六进制值 - 如:#FF0000。
- 一个RGB值-如:RGB(255,0,0)。
- 颜色的名称 - 如:red。
body {color:red;}
h1 {color:#00ff00;}
h2 {color:rgb(255,0,0);}
文本的水平对齐方式
当text-align
设置为"justify",每一行被展开为宽度相等,左,右外边距是对齐(如杂志和报纸)。
文本修饰
text-decoration
属性一般用于删除链接的下划线。
值 | 描述 |
---|---|
none | 默认。定义标准的文本。 |
underline | 定义文本下的一条线。 |
overline | 定义文本上的一条线。 |
line-through | 定义穿过文本下的一条线。 |
blink | 定义闪烁的文本。 |
inherit | 规定应该从父元素继承 text-decoration 属性的值。 |
文本转换
文本转换属性是用来指定在一个文本中的大写和小写字母。
可用于所有字句变成大写或小写字母,或每个单词的首字母大写。
文本缩进
text-indent
属性控制首行文本的缩进。
属性值可以是固定值(包括负数),也可是百分比。
注意em单位一般代表网页中一个字符的大小。
字符间距和字间距
-
letter-spacing属性控制字符的间距。属性值可以是正负数。
word-spacing属性控制字间距。
行间距
line-height
属性控制行间距(简称行高)。
元素的垂直对齐方式
vertical-align
属性控制元素垂直对齐方式。
vertical-align被用于垂直对齐inline元素,也就是display值为inline和inline-block的元素。
也就是垂直居中是运用在行内元素的。
值 | 描述 |
---|---|
baseline | 默认。元素放置在父元素的基线上。 |
sub | 垂直对齐文本的下标。 |
super | 垂直对齐文本的上标。 |
top | 把元素的顶端与行中最高元素的顶端对齐 |
text-top | 把元素的顶端与父元素字体的顶端对齐 |
middle | 把此元素放置在父元素的中部。 |
bottom | 把元素的顶端与行中最低的元素的顶端对齐。 |
text-bottom | 把元素的底端与父元素字体的底端对齐。 |
inherit | 规定应该从父元素继承 vertical-align 属性的值。 |