一.a元素补充
- 锚点链接
-
伪链接
- a元素连接不能掉
href
属性
- a元素连接不能掉
-
图片链接跳转
img和a一起使用可以实现图片链接
, a链接不一定是跳转新网页,还可以跳转发邮件,下载项目等....
二. URL->input
-
访问资源的过程 域名通过
DNS解析
转成唯一标识的IP地址,通过IP地址找到服务器,解析用户请求并返回 -
URL的构成->协议头"//主机IP:端口号/路径/parameters?query#fragment
- 协议头一般是http和https
- http的端口号是80
query
是请求
-
什么是url
- Uniform Resource Locator(统一资源定位符
- 互联网上每个资源都有唯一的一个url
三. 认识CSS
-
css属性名都是小写
还未写css的时候,html元素自带样式是浏览器加的.
四. CSS引入方式
-
内联样式
-
文档样式表
-
外部样式
- 开发网页特性: 结构和样式分离
- 便于维护, .css结尾
- 使用link引入样式
- 也可使用@import url(" ")引入样式
- 层叠:针对同个元素重叠的样式会层叠,下面的覆盖上面的
- 两个css文件可以从一个文件引入到另外一个css
五.CSS基础选择器
-
通配选择器(少用)
*
- 应用场景-去掉所有元素body自带的内边距和外边距
*{ margin:0 padding:0 }
-
元素选择器(少用)-元素名都一样,很混乱
-
类选择器(常用)
-
class相同
,样式设置相同 -
一个元素是可以有多个类的,多个类以
空格
进行分割 -
类的名字的规范
-
尽量见名知意--语义化
-
当多个单词形成类名时,以下面方式连接
-
使用中划线-连接:large-font
-
使用下划线连接:large_font
-
使用驼峰法连接:largeFont
补充: 驼峰标识
小驼峰:第一个单词的首字母小写,后面遇到一个单词字母就大写 适用场景: html js函数名字 大驼峰:所有的单词字母都大写 适用场景: js中定义类的名字
-
-
-
-
id选择器
- 适用-
大门类划分
- id名称在同一个页面中不要重复
- 适用-
六. CSS常见的属性
-
color:设置前景色
-
font-size:设置文字的大小
-
backgroud-color背景颜色
-
width和height
- 行内元素设置宽度和高度是无效的,比如
设置display:inline-block/display:block
- 行内元素设置宽度和高度是无效的,比如
七. 颜色空间RGB
-
单词关键字
-
rgb/rgba
- a:alpha:0~1
- 0表示完全透明
- 1表示完全不透明
- a:alpha:0~1
-
十六进制
- 有些用
三位数
,用#rgb代替#rrggbb - 表示RGBA全部是0的时候,使用
transparent
- 有些用
八. 文本属性
-
text-decoration
-
none-
去除所有的下划线
包括a元素 -
给其他元素添加装饰线
- overline添加
上划线
- line-through添加删除线,
中间横穿
- underline添加
下划线
- overline添加
-
-
letter-spacing设置字母之间的间距
w o r d
-
word-spacing设置单词之间的间距
my word
-
text-transform用于设置
文本大小
写转换- capitalize:设置
首字母
大写 - uppercase:设置
所有的字母
大写 - lowercase:设置
所有字母
小写 - none:什么都不设置
- capitalize:设置
-
text-indent精准控制缩进
- 1em是相对
父元素
字体大小, 1em=1*当前px - rem是相对
html
根元素的大小
- 1em是相对
-
text-align设置元素内容在元素中的水平对齐方式
- 默认值是left
- right内容靠右对齐
center
居中对齐- justify对最后一行没有效果,对其他行左右两边对齐把
一行剩余空间平分到单词
- text-align-last:justify:操作最后一行
九.字体属性
-
font-size设置文本字体的大小
- em基于父元素的font-size大小
- 一般设置的字体大小在12px以上
-
font-family设置字体名称-用什么字体显示
- 默认使用微软雅黑-Microsoft YaHei'
- 避免操作系统中没有这种字体,会设置多个字体,如果系统没找到设置的这些字体就使用系统默认字体
- 从左向右选择字体,直到找到有用字体
- 英文字体只适用于英文,中文字体即适用中文也适用英文
- 如果在开发中,中英文使用不同的字体,->将英文字体写在前面,中文字体写在后面
- 当公司没有要求的时候,把大公司的字体拷过来
- 建议给字体都加上单引号
- @import url('')->加单引号将里面的内容看成一个整体
-
font-weight设置文本的粗细
- strong和h1和b标签浏览器设置font-weight属性默认bold
- nomal:400, bold:700(使用最多)
-
font-style设置文字
常规和斜体
(常用)- 斜体元素
i
(做小图标)和em标签 italic
前提是需要font-family支持这种斜体
- 斜体元素
-
font-variant影响小写字母的显示样式
-
line-height用于设置文本的行高
-
一行文本占据的高度不一定是文本内容本身占据的高度
-
div默认等于文字的行高
-
文本间有间距,所以有行高,方便阅读
-
行高是两个基线之间的距离,
行高=文本内容的高度+行距
- 行距是底线到下一行文字顶部之家的距离
-
总结:div=行距+文本内容高度=行高
line-height=文本内容高度+行距
div的高度就是line-height的高度
想要设置div的高度并且文字内容居中,可以只设置line-height不设置height->垂直居中line-height = height
-
font是个缩写属性
- font后面可以跟多个值
注意
:font-weight/line-height,font-family不能调换位置,调换之后就没有效果了
十. 更多选择器
-
属性选择器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> /* 1.选择title属性里面只要包含one,都设置样式 */ /* [title*="one"] { background-color: #f00; } */ /* 2.当title属性值是one,设置样式 */ /* [title="one"] { background-color: #f00; } */ /* 3.当title属性以one开头,设置样式 */ /* [title^="one"] { background-color: red; } */ /* 4.选择title属性以one结尾,设置上样式,这里要注意one值也是 */ [title$="one"] { background-color: red; } </style> </head> <body> <p title="one">文字内容1</p> <a href="#" title="one two">文字内容2</a> <span title="onetwo">文字内容3</span> <span title="twoone">文字内容4</span> <div>文字内容5</div> </body> </html>
-
后代选择器
- 包括直接\间接子元素
- !!!p里面不能嵌套div元素,会出问题,div一般可以都嵌套,但是p一般包含文本元素
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 选择div元素里面的span元素,!!!中间是空格*/
/* 1.span是div的子元素,其中是包含直接子元素和后代子元素 */
/* div span {
background-color: #f0f;
} */
/* 2.子选择器,子选择器会层叠父选择器,!!!中间是> */
/* div>span {
background-color: #ff0;
} */
/* 3.除了标签,后代选择器和子选择器都可以应用到类上 */
/* 后代选择器 */
/* .box2 span {
background-color: #f00;
} */
/* 子代选择器 */
.box2>span {
background-color: #f0f;
}
</style>
</head>
<body>
<span class="box1">文字内容1</span>
<div class="box2">
<span class="box3">文字内容2</span>
<p class="box4">
<span class="box5">文字内容3</span>
</p>
</div>
<div class="box2">
<span class="box6">文字内容4</span>
</div>
<span>文字内容5</span>
</body>
</html>
-
子代选择器>
- 只包括
直接子元素
- span是个行内元素, div是个block元素
- 只包括
-
相邻兄弟选择器
- 只能是!!!
紧挨着
!!!的兄弟元素
- 只能是!!!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 相邻兄弟选择器 */
/* 必须是紧挨在后面的兄弟,!!!符号是+ */
div+p {
background-color: #f00;
}
/* 全兄弟选择器 */
/* 不用紧挨着,只要是在后面的兄弟就可以 !!!符号是~ */
div~p {
font-weight: bold;
}
</style>
</head>
<body>
<p>文字内容1</p>
<div>
<!-- 文字内容2不是兄弟,是父子 -->
<p>文字内容2</p>
</div>
<p>文字内容3</p>
<p>文字内容4</p>
</body>
</html>
-
全兄弟选择器
- 不需要是紧挨着的兄弟元素,
只要求是兄弟元素
- 不需要是紧挨着的兄弟元素,
-
交集和并集选择器
-
交集
既要符合A又要符合B
-
并集
- A,B只要符合其中一个就会选择
-
```
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 交际选择器,选中文字内容1 */
div.one[title="other"] {
background-color: #0ff;
}
/* 如果先被交际选择器选中,后期使用并集选择器泽不出出现样式效果 */
/* 并集选择器, */
div,.one,[title="other"] {
background-color: #f00;
}
</style>
</head>
<body>
<div class="one">文字内容1</div>
<div class="one" title="text1">文字内容2</div>
<div class="one" title="other">文字内容3</div>
<p class="one "> 文字内容4</p>
</body>
</html>
```
属性选择器 | 后代选择器 | 子选择器 | 相邻兄弟选择器 | 全兄弟选择器 | 交集选择器 | 并集选择器 |
---|---|---|---|---|---|---|
[属性名="属性值"] [属性名*=属性值] [属性名^=属性值] [属性名$=属性值] | 空格 | + | ~ | 紧挨 | , |
这些选择器可以标签和属性和类夹杂使用
十一. 补充
1.不要用标签取名class
2. 中划线叫做连字符
3.link中的rel不能省略,确定rel,相应的type也会默认确定,此时type可以省略
4. .org:非盈利组织