如果说HTML是定义了网页的内容,那么CSS就是描述美观了网页的布局,让页面更加的舒适自然人性化了,加下来我们就来学习一下CSS吧
CSS范例
我不管,我最帅
我是你的小可爱
CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明:
选择器通常是您需要改变样式的 HTML 元素。
每条声明由一个属性和一个值组成。
属性(property)是您希望设置的样式属性(style attribute)。每个属性有一个值。属性和值被冒号分开。CSS声明总是以分号(;)结束,声明组以大括号({})括起来:
p {color:red;text-align:center;}
id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。
HTML元素以id属性来设置id选择器,CSS 中 id 选择器以 “#” 来定义。
以下的样式规则应用于元素属性 id=“custom”:
id选择器
Hello World!
这个段落不受该样式的影响。
class 选择器用于描述一组元素的样式,class 选择器有别于id选择器,class可以在多个元素中使用。
class 选择器在HTML中以class属性表示, 在 CSS 中,类选择器以一个点"."号显示
在以下的例子中,所有拥有 center 类的 HTML 元素均为居中。
class选择器
标题居中
段落居中。
当读到一个样式表时,浏览器会根据它来格式化 HTML 文档。插入样式表的方式有以下三种
当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 标签链接到样式表。 标签在(文档的)头部:
浏览器会从文件 mystyle.css 中读到样式声明,并根据它来格式文档。
外部样式表可以在任何文本编辑器中进行编辑。文件不能包含任何的 html 标签。样式表应该以 .css 扩展名进行保存。下面是一个样式表文件的例子
hr {color:sienna;}
p {margin-left:20px;}
body {background-image:url("/images/back40.gif");}
当单个文档需要特殊的样式时,就应该使用内部样式表。你可以使用 style 标签在文档头部定义内部样式表,就像这样
由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势。请慎用这种方法,例如当样式仅需要在一个元素上应用一次时。
要使用内联样式,你需要在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性。本例展示如何改变段落的颜色和左外边距
这是一个段落。
如果某些属性在不同的样式表中被同样的选择器定义,那么属性值将从更具体的样式表中被继承过来。 例如,外部样式表拥有针对 h3 选择器的三个属性
h3
{
color:red;
text-align:left;
font-size:8pt;
}
而内部样式表拥有针对 h3 选择器的两个属性:
h3
{
text-align:right;
font-size:20pt;
}
假如拥有内部样式表的这个页面同时与外部样式表链接,那么 h3 得到的样式是
color:red;
text-align:right;
font-size:20pt;
即颜色属性将被继承于外部样式表,而文字排列(text-alignment)和字体尺寸(font-size)会被内部样式表中的规则取代。
样式表允许以多种方式规定样式信息。样式可以规定在单个的 HTML 元素中,在 HTML 页的头元素中,或在一个外部的 CSS 文件中。甚至可以在同一个 HTML 文档内部引用多个外部样式表。
一般情况下,优先级如下:
内联样式)Inline style > (内部样式)Internal style sheet >(外部样式)External style sheet > 浏览器默认样式
颜色值通常可以由以下三种方式定义
颜色范例
CSS background-color 实例!
啦啦啦,啦啦啦
该段落有自己的背景颜色。
我是卖报的小行家
background-image 属性描述了元素的背景图像.
默认情况下,背景图像进行平铺重复显示,以覆盖整个元素实体.
页面背景图片设置实例
设置图片背景
你是最棒的!
了让页面排版更加合理,不影响文本的阅读,我们可以改变图像的位置。
可以利用 background-position 属性改变图像在背景中的位置:
设置背景图片不平铺居右上角
Hello World!
背景图片不重复,设置 position 实例。
背景图片只显示一次,并与文本分开。
实例中还添加了 margin-right 属性用于让文本与图片间隔开。
在以上实例中我们可以看到页面的背景颜色通过了很多的属性来控制。
为了简化这些属性的代码,我们可以将这些属性合并在同一个属性中.
背景颜色的简写属性为 “background”
背景简化属性
Hello World!
背景图片只显示一次,但它位置离文本比较远。
在这个例子中我们添加了一个右边距,所以背景图像不会打扰到文本。
文本排列属性是用来设置文本的水平对齐方式。
文本可居中或对齐到左或右,两端对齐.
当text-align设置为"justify",每一行被展开为宽度相等,左,右外边距是对齐(如杂志和报纸)。
设置文本的对齐方式(runoob.com)
CSS text-align 实例
2018 年 10 月 15 号
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
注意: 重置浏览器窗口大小查看 "justify" 是如何工作的。
text-decoration 属性用来设置或删除文本的装饰。
从设计的角度看 text-decoration属性主要是用来删除链接的下划线
删除链接的下划线
链接到: baidu.com
文本转换属性是用来指定在一个文本中的大写和小写字母。
可用于所有字句变成大写或小写字母,或每个单词的首字母大写。
设置大小写
This is some text.
This is some text.
This is some text.
文本缩进属性是用来指定文本的第一行的缩进
设置第一行的缩进
In my younger and more vulnerable years my father gave me some advice that I've been turning over in my mind ever since. 'Whenever you feel like criticizing anyone,' he told me, 'just remember that all the people in this world haven't had the advantages that you've had.'
font-family 属性设置文本的字体系列。
font-family 属性应该设置几个字体名称作为一种"后备"机制,如果浏览器不支持第一种字体,他将尝试下一种字体。
注意: 如果字体系列的名称超过一个字,它必须用引号,如Font Family:“宋体”。
多个字体系列是用一个逗号分隔指明:
设置字体
CSS font-family
这一段的字体是 Times New Roman
这一段的字体是 Arial.
主要是用于指定斜体文字的字体样式属性。
这个属性有三个值:
如果你不指定一个字体的大小,默认大小和普通文本段落一样,是16像素(16px=1em)
设置文字的大小与像素,让您完全控制文字大小:
设置字体大小像素
This is heading 1
This is heading 2
This is a paragraph.
允许在 Internet Explorer 9, Firefox, Chrome, Opera, 和 Safari 中通过缩放浏览器调整文本大小。
注意:这个例子在 IE9之前的版本不工作, prior version 9.
为了避免Internet Explorer 中无法调整文本的问题,许多开发者使用 em 单位代替像素。
em的尺寸单位由W3C建议。
1em和当前字体大小相等。在浏览器中默认的文字大小是16px。
因此,1em的默认大小是16px。可以通过下面这个公式将像素转换为em:px/16=em
设置em代替像素
This is heading 1
This is heading 2
This is a paragraph.
使用 em 单位,允许在所有浏览器中调整文本大小。
不幸的是,仍然是IE浏览器的问题。调整文本的大小时,会比正常的尺寸更大或更小。
在所有浏览器的解决方案中,设置 元素的默认字体大小的是百分比
百分比和em结合兼容文字大小
This is heading 1
This is heading 2
This is a paragraph.
在所有浏览器中,可以显示相同的文本大小,并允许所有浏览器缩放文本的大小。
链接的样式,可以用任何CSS属性(如颜色,字体,背景等)。
特别的链接,可以有不同的样式,这取决于他们是什么状态。
这四个链接状态是:
链接样式
注意: a:hover 必须在 a:link 和 a:visited 之后,需要严格按顺序才能看到效果。
注意: a:active 必须在 a:hover 之后。
在HTML中,有两种类型的列表:
无序列表 - 列表项标记用特殊图形(如小黑点、小方框等)
有序列表 - 列表项的标记有数字或字母
使用CSS,可以列出进一步的样式,并可用图像作列表项标记。
设置列表项标记(runoob.com)
无序列表实例:
- Coffee
- Tea
- Coca Cola
- Coffee
- Tea
- Coca Cola
有序列表实例:
- Coffee
- Tea
- Coca Cola
- Coffee
- Tea
- Coca Cola
浏览器兼容方案
- Coffee
- Tea
- Coca Cola
ul:
设置列表样式类型为没有删除列表项标记
设置填充和边距0px(浏览器兼容性)
ul中所有li:
设置图像的URL,并设置它只显示一次(无重复)
您需要的定位图像位置(左0px和上下5px)
用padding-left属性把文本置于列表中
css属性概念还有很多,由于篇幅有限,笔者这里也只是抛砖引玉,感兴趣的小伙伴可以从实践中去探索,这样会更高效哦