css基础

CSS三种引入方式

一、三种方式的书写规范

1、行间式
<div style="width: 100px; height: 100px; background-color: red"></div>
2、内联式
<head>
    <style>
        div {
            width: 100px;
            height: 100px;
            background-color: red;
        }
    </style>
</head>
3、外联式
file: zero.css
div {
	width: 100px;
    height: 100px;
    background-color: red;
}
file: zero.html
<head>
    <link rel="stylesheet" type="text/css" href="css/zero.css" />
</head>

二、三种方式间的"优先级"

  • 与样式表的解析顺序有关
v_test:掌握三种CSS引入方式方式

样式与长度颜色

1、基本样式
<head>
    <style>
        div {
            width: 100px;
            height: 100px;
            background-color: red;
        }
    </style>
</head>
2、长度
  • px:像素(pixel),屏幕上显示的最小单位,用于网页设计,直观方便
  • mm:毫米
  • cm:厘米
  • in:英寸
  • pt:点(point),一个标准的长度单位,1pt=1/72in,用于印刷业,非常简单易用;
  • em:相当长度,通常1em=16px,应用于流式布局
3、颜色
  • rgb():三个值可为[0-255]数值或百分比,以,相隔(r:Red g:Green b:Blue)
  • rgba():前三个值可为像素或是百分比,最后一个为[0, 1]数值,以,相隔(r:Red g:Green b:Blue a:Alpha)
  • hsl():第一个值为[0,360]数值,后二个值可为百分比,以,相隔(h:Hue s:Saturation l:Lightness)
  • hsla():第一个值为[0,360]数值,中间二个值可为百分比,最后一个为[0, 1]数值,以,相隔(h:Hue s:Saturation l:Lightness a:Alpha)
  • #AABBCC:六个十六进制位,每两位一整体,分别代表Red、Green、Blue,可以简写#abc
v_test:熟悉所有的长度单位与颜色表示方式

常用样式

1、字体样式
  • font-family:字体族科,多值用于备用,以,隔开
font-family: "STSong", "Arial";
  • font-size:字体大小
  • font-style: 字体风格 normal | italic | oblique
  • font-weight:字体重量 normal | bold | lighter | 100~900
  • line-height:行高
  • font:字重 风格 大小/行高 字族
2、文本样式
  • color:文本颜色
  • text-align:横向排列
left 居左 | center 居中 | right 居右
  • vertical-align:纵向排列
baseline:将支持valign特性的对象的内容与基线对齐 
sub:垂直对齐文本的下标 
super:垂直对齐文本的上标 
top:将支持valign特性的对象的内容与对象顶端对齐 
text-top:将支持valign特性的对象的文本与对象顶端对齐 
middle:将支持valign特性的对象的内容与对象中部对齐 
bottom:将支持valign特性的对象的文本与对象底端对齐 
text-bottom:将支持valign特性的对象的文本与对象顶端对齐 
  • text-indent:字体缩减
  • text-decoration:字划线
  • letter-spacing:字间距
  • word-spacing:词间距
  • word-break:自动换行
normal:默认换行规则
break-all:允许在单词内换行
3、背景样式
  • background-color:颜色
  • background-image:图片
background-image: url(bg.png);
  • background-repeat:重复
repeat | no-repeat | repeat-x | repeat-y
  • background-position:定位
top | bottom | left | right | center
v_hint:定位值可为方位词、百分比及固定值,值个数默认为两位(水平/垂直),一个值时垂直默认center
  • background-attachment:滚动模式
scroll | fixed
v_eg:父级设置属性,子集内容超出父级范围
v_hint:掌握基本属性

CSS选择器

一、基础选择器

1、通配选择器
* {
    border: solid;
}
匹配文档中所有标签:通常指html、body及body中所有显示类的标签
2、标签选择器
div {
    background-color: yellow;
}
匹配文档中所有与标签名匹配的标签:如div{}会匹配文档中全部div,span{}会匹配文档中所有span
3、类选择器
.red {
    color: red;
}
匹配文档中所有拥有class属性且属性值为red的标签:如<sup class="red"></sup> <sub class="red"></sub>均会被匹配
4、id选择器
#div {
    text-align: center;
}
匹配文档中所有拥有id属性且属性值为div的标签:如<div id="div"></div> <section id="div"></section>均会被匹配

二、基础选择器优先级

  • 基础选择器优先级大致与选择器匹配范围成反比,匹配范围越小,优先级越高
  • 基础选择器优先级大致与选择器匹配精度成正比,匹配精度越高,优先级越高
  • 基础选择器优先级:id选择器 > 类选择器 > 标签选择器 > 通配选择器
v_hint:id选择器必须保证单文档的唯一性

三、组合选择器

1、群组选择器
div, span, .red, #div {
    color: red;
}
  • 一次性控制多个选择器
  • 选择器之间以,隔开,每一个选择器位均可以为任意合法选择器或选择器组合
2、子代(后代)选择器
子代选择器用>连接
body > div {
    color: red;
}
后代选择器用空格连接
.sup .sub {
    color: red;
}
  • 一次性控制一个选择器(逻辑最后的那个选择器),前置位的选择器为修饰性选择器
  • 每一个选择器位均可以为任意合法选择器或选择器组合
  • 子代选择器必须为一级父子嵌套关系,后代选择器可以为一级及多级父子嵌套关系
3、相邻(兄弟)选择器
相邻选择器用+连接
.d1 + .d2 {
    color: red;
}
兄弟选择器用~连接
.d1 ~ .d3 {
    color: red;
}
  • 一次性控制一个选择器(逻辑最后的那个选择器),前置位的选择器为修饰性选择器
  • 每一个选择器位均可以为任意合法选择器或选择器组合
  • 相邻选择器必须为直接相邻关系,兄弟选择器可以为直接相邻或间接相邻关系
4、交集选择器
<div class="d" id="dd"></div>
div.d#dd {
    color: red;
}

<div class="d1 d2 d3"></div>
.d1.d2.d3 {
    color: red;
}

四、组合选择器优先级

  • 组合选择器优先级与权值相关,权值为权重和
  • 权重对应关系
选择器权重
通配1
标签10
类、属性100
id1000
!important10000
  • 选择器权值比较,只关心权重和,不更新选择器位置
  • 不同级别的选择器间不具备可比性:1个类选择器优先级高于n个标签选择器的任意组合

五、属性选择器

  • [attr]:匹配拥有attr属性的标签
  • [attr=val]:匹配拥有attr属性,属性值为val的标签
  • [attr^=val]:匹配拥有attr属性,属性值以val开头的标签
  • [attr$=val]:匹配拥有attr属性,属性值以val结尾的标签
  • [attr*=val]:匹配拥有attr属性,属性值包含val的标签
v_hint:属性选择器权重等价于类
v_test:掌握所有选择器,并熟知选择器优先级
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值