HTML联合CSS
CSS介绍:
CSS(层叠样式表)定义如何显示HTML元素。
当浏览器读到一个样式表,它就会按照这个样式表
CSS语法
每个CSS样式由两个组成部分:选择器和声明。声明包括属性和属性值。每个声明结束后用分号结束
选择器{
属性:值;
}
PS:属性和值之后就是声明
CSS注释
/* CSS的注释格式 */
CSS的几种引入方式
行内样式 行内式是标记在style属性中设定CSS样式,不建议大规模使用
- 内部样式 嵌入式是将CSS样式集中写在网页的头部的
<style></style>标签中
外部样式外部样式就是将CSS写在一个单独的文件中,然后在页面进行引入推荐使用
1.行内样式
行内式是标记在style属性中设定CSS样式,不建议大规模使用
<p style="color:red">hello world</p> <!--style属性,属性,属性值 -->
2.内部样式
嵌入式是将CSS样式集中写在网页的头部的<style></style>标签中
<head> <meta charset="UTF-8"> <title>CSS样式</title> <style> /*p是选择器*/ p{ background-color:#2b99ff; /* 属性 属性值*/ } </style> </head>
3.外部样式
外部样式就是将CSS写在一个单独的文件中,然后在页面进行引入推荐使用
<link href="mystyle.css" rel="stylesheet" type="text/css"> <!--外部链接 链接文件名 定义一个外部加载的样式表 类型-->
CSS选择器
基本选择器
元素选择器
p{ color:"red"; } /*元素名{ 属性:属性值; }
id选择器
#il{ backgroud-colro:red; } /* #id名{ 属性:属性值; } */
注意
样式类名不要用数字开头(个别浏览器不支持)
标签中的class属性如果又多个,要用空格分隔
组合选择器
后代选择器
/*li内部的a标签设置字体颜色*/ li a{ color:green; } <body> <li> <a></a> </li> </body>
儿子选择器
/* 选择所有父级是<div>元素的<p>元素 直白点就是div里面包着p的话那就对p这个元素进行穿衣 */ div>p{ font-family:"Arial Black",arial-black,cursive; }
毗邻选择器
/*选择所有紧接着<div>元素之后的<p>元素,非包含关系*/ div+p{ margin:5px; }
弟弟选择器
/* #il后面所有的兄弟p标签 il是id选择器 */ #li~p{ border:2px solid royablue; }
属性选择器
/*用于选取有指定属性的元素*/ p[title]{ color:red } p[title="213"]{ color:green; }/*找到p元素里title属性有213的属性*/ /*找到title属性以hello开头的元素*/ [title^="hello"] /*找到title属性以hello结尾的元素*/ [title$="hello"] /*找到title属性所有hello的元素*/ [title*="hello"] /*找到所有title属性有多个值或者以空格分割中有一个值为hello的元素*/ [title~="hello"]
分组和嵌套
分组
当多个元素的样式相同的时候,我们没有必要重复地为每个元素都设置样式,我们可以通过在多个选择器之间使用逗号分隔的分组选择器来同一设置元素样式
div,p{ color:red; } /*通常分为两行来写,也可以写成一行,两行更清晰*/
嵌套
多种选择器可以混合起来使用,比如:.c1类内部所有p标签设置字体颜色为红色
.c1 p{ color:red; }
伪类选择器
/*没有访问过的链接*/ a:link{ color:red; } /*鼠标移动到链接上*/ a:hover{ color:red; } /*选定链接*/ a:active{ color:#00ff00; } /*input输入框获取焦点时样式*/ input:focus{ outline:none; background-color:#eee; }
伪元素选择器
first-letter
常用给首字母设置特殊样式:
p:first-letter{ font-size:48px; color:red; }
before
/*在每个p元素之前插入内容*/ p:before{ content:"*"; color:red; }
after
/*在每个p元素之后插入内容*/ p:before{ content:"[?]"; color:blue; }
before和after多用于清除浮动
选择器的优先级
CSS继承
继承是CSS的一个主要特征,它是依赖于祖先-后代的关系的。继承是一种机制,它允许样式不仅可以应用于某个特定的元素,还可以应用于它的后代
body{ color:red; } 此时页面上所有标签都会继承body的字体颜色。
优先级
当然还可以通过其他的方式来强制让优先级低的样式生效,语法是!importtant
万不得已不可以使用!importtant
CSS相关属性
宽和高
width设置元素的宽度
height设置元素的高度
块级标签才可以设置宽度,内联标签的宽度由内容决定
字体属性
文字字体
font-family可以把多个字体名称作为一个“回退”系统来保存,如果浏览器不支持第一个就会尝试下一个
body{ font-family:"Microsoft Yahei", "微软雅黑", "Arial", }
文字大小
p{ font-size:14px; } 如果设置inherit表示继承父元素的字体大小
字重(粗细)
font-weight设置字重
值 | 描述 |
---|---|
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之间