看俩眼先:
文本:color、direction、letter-spacing、word-spacing、line-height、text-align、text-indent、text-transform、text-decoration、white-space
字体:font、font-family、font-style、font-size、font-variant、font-weight
背景:background、background-color、background-image、background-repeat、background-attachment、background-position
盒子模型:width、height、border、margin、padding
列表:list-style
表格:border-collapse
显示:display、visibility、overflow、opacity、filter
定位: vertical-align、position、left、top、right、bottom、float、clear
内联样式(inline style)
文档样式表(document style sheet)、内嵌样式表(embed style sheet)
外部样式表(external style sheet)
将样式写在head元素的style元素中
type属性值默认是text/css
可以在style元素或者CSS文件中使用@import导入其他的CSS文件,不建议使用,效率比link元素低
通用选择器(universal selector)
元素选择器(type selectors)
类选择器(class selectors)
id选择器(id selectors)
属性选择器(attribute selectors)
组合(combinators)
伪类(pseudo-classes)
伪元素(pseudo-elements)
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
a{
text-decoration:none;
color: #333;
}
.taobao{
color: #00ffff;
}
p{
text-decoration: overline;
}
div{
text-decoration: line-through;
}
span{
text-decoration: underline;
}
style>
head>
<body>
<a href="#">百度一下a>
<div>
<a href="#" class="taobao">淘宝一下a>
div>
<p>hahahahap>
<div>hehehediv>
<span>hihihispan>
<u>heiheieheiu>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.p1{
letter-spacing: 10px;
/* letter-spacing: -10px; */
}
.p2{
word-spacing: 10px;
/* word-spacing: -10px; */
}
style>
head>
<body>
<p class="p1">hello worldp>
<p>hello worldp>
<p class="p2">hello worldp>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.text1{
text-transform: capitalize;
}
.text2{
text-transform: uppercase;
}
.text3{
text-transform: lowercase;
}
style>
head>
<body>
<div class="text1">hello worddiv>
<div class="text2">hello worddiv>
<div class="text3">Hello Worddiv>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
/* left/right/center */
box1{
background-color: blue;
text-align: center;
}
box2{
background-color: purple;
text-align: center;
}
box3{
background-color: grey;
text-align: center;
}
.inner1{
background-color: purple;
width: 200px;
}
.box4{
background-color: #0045fd;
/* 让内嵌子元素div居中必须先取消其块级特性 */
text-align: center;
}
.inner2{
background-color: rebeccapurple;
width: 200px;
/* 取消块级元素独占一行的特性 */
display: inline-block;
}
/* 2.justify */
.box5{
background-color: red;
color: white;
width: 500px;
/* text-align:justify对最后一行没有效果 */
text-align:justify;
/* text-align-last: justify;设置最后一行 */
/* text-align-last: justify; */
}
style>
head>
<body>
<div class="box1">hahahhadiv>
<div class="box2">
<img src="" alt="">
div>
<div class="box3">
<div class="inner1">hehehehhediv>
div>
<div class="box4">
<div class="inner2">hihihihidiv>
div>
<div class="box5">
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
Hello World Hello World Hello World Hello World
div>
body>
html>
具体数值+单位
比如100px
也可以使用em单位:1em代表100%,2em代表200%,0.5em代表50%
百分比
基于父元素的font-size计算,比如50%表示等于父元素font-size的一半
font-weight用于设置文字的粗细(重量),不带单位
strong、b、h1~h6等标签的font-weight默认就是bold
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.price{
color: red;
font-weight: 700;
/* font-weight: bold; */
}
style>
head>
<body>
<strong>hahhahahastrong>
<h1>标题h1>
<p>
<span class="price">¥99span>
p>
body>
html>
font-variant可以影响小写字母的显示形式
根据元素的显示(能不能在同一行显示)类型,HTML元素可以主要分为2大类
根据元素的内容(是否浏览器会替换掉元素)类型,HTML元素可以主要分为2大类
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
/* 1.样式重置 */
ul {
/* 不常用 */
/* list-style-image: url(""); */
/* margin-top: 8px; */
/* list-style-position */
/* 不常用 */
/* list-style-position: outside; */
/* list-style-position: inside; */
/* list-style:是 list-style-type、list-style-image、list-style-position的缩写属性*/
/* 前俩个存在一个就行 */
/* list-style: outside url(""); */
/* 常规操作 */
list-style: none;
padding: 0;
margin: 0;
}
/* 2.整体样式 */
a {
text-decoration: none;
color: #0000cc;
}
/* 3.每一个li的样式 */
.page ul li {
display: inline-block/* 对内是行元素,对外是快元素 =>所有li在一行显示 */
}
.page ul li a {
display: inline-block;/* 对外是块级元素,可设置宽高 */
width: 34px;
height: 34px;
border: 1px solid #e1e2e3;
/* 横向居中 */
text-align: center;
/* 行高=div高度->垂直居中 */
line-height: 34px;
/* 调整间距 */
margin-right: 5px;
}
.page ul li a:hover {
border: 1px solid #38f;
background-color: #f2f8ff;
}
/*叠加css属性 */
.page .prev a,.page .next a {
/* 并集选择器 */
width: 88px;
}
/* 4.点击后的a效果 */
.page .active {
border: none;
font-weight: 700;
color: #000;
}
.page .active:hover {
border: none;
background-color: transparent;/* transparent:透明 */
}
style>
head>
<body>
<div class="page">
<ul>
<li class="prev"><a href="#"><上一页a>li>
<li><a href="#">1a>li>
<li><a href="#">2a>li>
<li><a class="active">3a>li>
<li><a href="#">4a>li>
<li><a href="#">5a>li>
<li><a href="#">6a>li>
<li><a href="#">7a>li>
<li><a href="#">8a>li>
<li><a href="#">9a>li>
<li><a href="#">10a>li>
<li class="next"><a href="#">下一页>a>li>
ul>
div>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
head>
<style>
/* 消除元素之间的空格 */
/* 1.设置父元素的font-size为0,然后在元素中重新设置自己需要的font-size */
/* body {
font-size: 0;
} */
span,strong,div {
/* font-size: 16px; */
/* 2.直接设置浮动,注意:一般是基线对齐 */
float:left;
}
span {
background-color: #e67e22;
}
strong {
background-color: #9b59b6;
}
div {
display: inline-block;
background-color:#2ecc71;
}
style>
<body>
<span>spanspan>
<strong>strongstrong>
<img src="" alt="">
<div>div元素div>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
div {
width: 100px;
height: 100px;
background-color: #ff0000;
}
/* 垂直方向上相邻的2个margin(margin-top、margin-bottom)有可能会合并为1个margin,这种现象叫做collapse(折叠) */
/* 水平方向上的margin(margin-left、margin-right)永远不会collapse */
/* 如何防止margin collapse?
只设置其中一个元素的margin
*/
.box1 {
margin-bottom: 40px;
}
.box2 {
margin-top: 20px;
}
style>
head>
<body>
<div class="box1">div>
<div class="box2">div>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.box {
width: 100px;
height: 100px;
margin: 0 auto;
background-color: #f00;
/* =inset?&&{2,4}&&
第1个:水平方向的偏移,正数往右偏移
第2个:垂直方向的偏移,正数往下偏移
第3个:模糊半径(blur radius)
第4个:延伸距离(向四周)
:阴影的颜色,如果没有设置,就跟随color属性的颜色(可省略)
inset:外框阴影变成内框阴影(可省略)
*/
box-shadow: -15px 15px 5px orange inset;
}
style>
head>
<body>
<div class="box">div>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.box {
font-size: 25px;
font-weight: 700;
text-shadow: 5px 5px 5px red,
-5px 5px 5px green;
}
p {
width: 500px;
}
p::first-line {
text-shadow: 2px 2px 2px orange;
}
p::first-letter {
font-size: 25px;
text-shadow: 2px 2px 2px purple;
}
style>
head>
<body>
<div class="box">你好啊div>
<p>
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
lalallalalalallalalalallalalal
p>
body>
html>
box-sizing用来设置盒子模型中宽高的行为
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.box {
width: 200px;
height: 200px;
background-color: #f00;
/* 默认不在宽高内 */
padding-bottom: 20px;
border-bottom: 20px solid purple;
/* 内容盒子 */
/* content-box:含义是设置宽高和高度时只是设置指定内容的高度 */
/* border-box:含义是设置宽高和高度时是内容+内边距+边框的宽度(内容被压缩了) */
/* box-sizing: content-box; */
box-sizing: border-box;
}
style>
head>
<body>
<div class="box">div>
<span>span元素span>
body>
html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
<style>
.box {
height: 200px;
background-color: #f00;
/* 1.普通文本 */
/* text-align: center; */
/* 2.行内元素 */
/* text-align: center; */
/* 3.图片:行内替换元素 */
/* text-align: center; */
/* 4.行内块级元素:inline-block */
/* text-align: center; */
text-align: center;/* 会让‘box’div的块级元素继承该属性导致文字居中 */
}
strong {
background-color: purple;
}
.ib {
display: inline-block;
width: 100px;
height: 100px;
background-color: orange;
}
.block {
background-color: yellowgreen;
width: 100px;
height: 100px;
/* 5.块级元素(在自身元素中添加该属性值) */
/* margin俩个值含义:(上下边距),(左右边距) */
margin: 0 auto;
}
style>
head>
<body>
<div class="box">
<div class="block">哈哈哈div>
<span>呵呵呵span>
div>
body>
html>
用于设置背景图片是否要平铺
用于设置背景图片的大小
cursor可以设置鼠标指针(光标)在元素上面时的显示样式
auto:浏览器根据上下文决定指针的显示样式,比如根据文本和非文本切换指针样式
none:没有任何指针显示在元素上面
默认情况下,元素都是按照normal flow(标准流、常规流、正常流、文档流【document flow】)进行排布
常见的伪类有
为了区分伪元素和伪类,建议伪元素使用2个冒号,比如::first-line
小辈只是个没有感情的搬运工…