CSS简介
## CSS介绍
CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素。
当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染)。
## CSS语法
CSS实例:每个CSS样式由两个组成部分:选择器和声明。声明又包括属性和属性值。每个声明之后用分号结束。
例如:
h1 {color: red; font-size: 14px}
选择器 属性 声明 值 属性 声明 值
## CSS注释
/*这是注释*/
快捷键是 ctrl + /
CSS的几种引入方式
## 行内样式
行内式是在标记的style属性中设定CSS样式。不推荐大规模使用
<p style="color; red">Hello world.</p>
## 内部样式
嵌入式是将CSS样式集中写在网页<head></head>标签对中,格式如下:
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
p{
background-color: #2b99ff;
}
</style>
</head>
<p>Hello world</p>
## 外部样式
外部样式就是将css写在一个单独的文件中,然后在页面进行引入即可。推荐使用此方式。
<link href="mystyle.css" rel="stylesheet" type="text/css"/>
CSS选择器
## 基本选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
#a1{
color: red;
}
/*id选择器*/
.a2{
color: yellow;
}
/*类选择器*/
#a1 #a11{color: greenyellow}
/*后代选择器*/
#a1>#a11{color: hotpink}
/*儿子选择器*/
#a1+p{margin: 10px}
/*选择所有紧接着 #a1 元素之后的<p>元素*/
#a1~div{border: 2px solid royalblue}
/*a1后面所有的兄弟div标签*/
div[title="hello"]{color: bisque}
/*用于选定带有指定属性和值的元素(选择属性title值为hello)*/
#a1, #a21 {color: blueviolet}
/*同时给id为a1和a21的字体颜色设置为蓝色,用到了分组,
标签之间用逗号隔开*/
body { font-family: "宋体", "Arial", sans-serif }
/*字体属性*/
div {
width: 20%;
height:200px;
background:yellowgreen;
}
/*宽、高和背景颜色*/
/* 未访问的链接 */
a:link {
color: #FF0000
}
/* 鼠标移动到链接上 */
a:hover {
color: #FF00FF
}
/* 选定的链接 */
a:active {
color: #0000FF
}
/* 已访问的链接 */
a:visited {
color: #00FF00
}
/*input输入框获取焦点时样式*/
input:focus {
outline: none;
background-color: #eee;
}
p:first-letter{font-size: 49px; color: red}
/*伪元素选择器,给首字母设置特殊格式*/
</style>
</head>
<body>
<div id="a1" style="font-size: 40px">
hello
<div id="a11">
hello world
</div>
<div id="a12">
hello china
</div>
</div>
<p>哈哈哈</p>
<div class="a2" style="font-size: 40px" title="hello">
welcome
<div id="a21">
welcome china
</div>
<div id="a22">
welcome British
</div>
</div>
<!--<link href="mystyle.css" rel="stylesheet" type="text/css"/>-->
<a href="属性的引入方式.html">属性的引入方式</a>
<p>hello<span>world</span>nice to meet you</p>
</body>
</html>
补充点
## 不怎么常用的属性选择器
/*找到所有title属性以hello开头的元素*/
[title^="hello"] {
color: red;
}
/*找到所有title属性以hello结尾的元素*/
[title$="hello"] {
color: yellow;
}
/*找到所有title属性中包含(字符串包含)hello的元素*/
[title*="hello"] {
color: red;
}
/*找到所有title属性(有多个值或值以空格分割)中有一个值为hello的元素:*/
[title~="hello"] {
color: green;
}
## 伪元素选择器
before:
/*在每个<p>元素之前插入内容*/ p:before { content:"*"; color:red; }
after:
/*在每个<p>元素之后插入内容*/ p:after { content:"[?]"; color:blue; }
#### before和after多用于清除浮动
'''
选择器的优先级
内联样式的权重为1000,id选择器的权重为100,类选择器的权重为10,元素选择器的权重为1,权重计算永不进位
'''
## CSS属性相关
width属性可以为元素设置宽度。
height属性可以为元素设置高度。
块级标签才能设置宽度,内联标签的宽度由内容来决定。
## 字体属性
# 字重(粗细)
normal:标准粗细
bold:粗体
bolder:更粗
lighter:更细
100~900:设置具体粗细,400等同于normal,而700等同于bold
inherit:继承父元素字体的粗细值,默认值
# 文本颜色
颜色属性被用来设置文字的颜色。
颜色是通过CSS最经常的指定:
十六进制值 - 如: #FF0000
一个RGB值 - 如: RGB(255,0,0)
颜色的名称 - 如: red
还有rgba(255,0,0,0.3),第四个值为alpha, 指定了色彩的透明度/不透明度,它的范围为0.0到1.0之间。