[前端基础]HTML+CSS入门(二)

目录

常见的CSS选择器:

标签选择器

类选择器(class选择器)

id选择器

通配符选择器

其他重要CSS选择器:

复合选择器:

后代选择器

子代选择器

并集选择器

交集选择器

伪类选择器

结构伪类选择器

伪元素选择器

常见的CSS属性:

其他:


目录

常见的CSS选择器:

标签选择器

类选择器(class选择器)

id选择器

通配符选择器

其他重要CSS选择器:

复合选择器

伪类选择器

结构伪类选择器

伪元素选择器

常见的CSS属性:

其他:


层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML或XML等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

CSS写法种类:

  • 外部样式表(External style sheet)
  • 内部样式表(Internal style sheet)
  • 内联样式(Inline style)

内联样式(行内样式):在标签内部使用style属性,style=" "。

内部样式表:在<head></head>内部使用<style></style>标签,里面是各种选择器

外部样式表:在<head></head>使用<link src=" " rel=" " type=" ">引入外部css文件

CSS注释:单行注释://   多行注释:/* */

CSS最重要的就是各种选择器,选择器之间的优先级:

相同级别的选择器,后面的覆盖前面的

!important>行内样式>ID选择器>类选择器=伪类>标签选择器=伪元素>通配符选择器>继承选择器

常见的CSS选择器:

标签选择器

使用html标签命名,格式:标签名{ }。如div{  },p{ },input{ }等等

类选择器(class选择器)

在标签内设置class值,再使用类选择器。格式:.类名{ } 如 .test{ },类名可重复

id选择器

在标签内设置id值,格式:#id名{ },id值不可重复,常配合js使用

通配符选择器

*{ },代表全局选择器,所有标签都使用,一般用于清除默认样式,设置内外边距为0

其他重要CSS选择器:

复合选择器:

后代选择器

格式:父选择器 子选择器 { },中间空格隔开,选择所有后代选择器(包括子代、孙子代)

子代选择器

格式:父选择器>子选择器 { },中间用>连接,只选择所有子代

并集选择器

格式:选择器1,选择器2 { },中间用逗号隔开,设置选择器1和2的样式

交集选择器

格式:选择器1选择器2 { },连着写中间不隔开,设置同时满足多个选择器的标签样式,标签选择器必须放在前面

伪类选择器

:表示伪类选择器,伪类表示元素状态,选中元素的某个状态设置属性

格式:选择器:hover{}

不只是a标签,任意选择器都可以设置

结构伪类选择器

根据元素的结构查找元素

格式:选择器:first-child 选择第一个选择器

使用公式 (an + b)。描述:a表示周期的长度,n 是计数器(从 0 开始),b 是偏移值。

nth-child与nth-of-type

区别:nth-of-type为什么要叫:nth-of-type?因为它是以"type"来区分的。也就是说:ele:nth-of-type(n)是指父元素下第n个ele元素, 而ele:nth-child(n)是指父元素下第n个元素且这个元素为ele,若不是ele,则选择失败。例:div p:nth-child(2){ },div p:nth-of-type(2){ }

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			*{
				margin: 0;
				padding: 0;
			}
			div>div{
				height: 20px;
				background: #0f0;
			}
			p{
				height: 20px;
				background: #0f0;
			}
			div p:nth-child(2){
				background-color: #f00;
				height: 20px;
			}
			div p:nth-of-type(2){
				background-color: #00f;
				height: 20px;
			}
		</style>
	</head>
	<body>
		<div>
			<div></div>
			<div></div>
			<div></div>
			<p></p>
			<p></p>
		</div>
	</body>
</html>

 div p:nth-child(2)不成功的原因就是div的第二个元素不是p标签

伪元素选择器

创建虚拟元素,用来摆放装饰性内容

格式:E::before 在E元素的里面,最前面添加,after是最后面

常见的CSS属性:

文字颜色:color,高度:height,宽度:width,字体大小:font-size(单位:px),font-weight(100~700,400为正常值),字体:font-family(多个字体逗号隔开,从左到右依次查找,最后设置字体族名,分为无衬线和衬线字体),文本对齐方式:text-align(center:居中),文字装饰样式:text-decoration(underline:下划线、none:无),背景颜色:background-color,列表样式:list-style-type/list-style(none:无),显示模式:display(block:块级元素,inline:行内元素,inline-block:行内块元素),外边距:margin,内边距:padding,边框线:border,行高:inline-height

其他:

边框:

        内外边框都可以设置四个方向的值,可以分开设置:margin-top,margin-right,margin-bottom,margin-left,也可以两个一起设置:margin:10px 15px,代表上下边框为10px,左右边框15px,也可以四个一起:margin:5px 10px 15px 20px 代表上边框5px、右边框10px、下边框15px,左边框20px(逆时针),padding同理

颜色:

        颜色可以使用英文单词,十六进制,rgb值表示

英文:white,red,yellow,blue,black等等

十六进制:#000000~#ffffff,如果三组值一样可以简写,例:#f00 = #ff0000,#0f0 = #00ff00

rgb值:三组0~255的值表示,例:(0,255,255),还有一种rgba值,a代表透明度,取值(0,1)越低越透明

盒子模型:

        html的标签都可以看做是一个盒子分为外边距margin,边框border,内边距padding,内容。设置宽高是设置内容的宽高,整体宽高还要加上内外边距和边框线的大小。

例: