CSS选择器

盒模型

标签a、img、list

伪类选择器

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
id 1000
!important 10000
  • 选择器权值比较,只关心权重和,不更新选择器位置
  • 不同级别的选择器间不具备可比性:1个类选择器优先级高于n个标签选择器的任意组合

五、属性选择器

  • [attr]:匹配拥有attr属性的标签
  • [attr=val]:匹配拥有attr属性,属性值为val的标签
  • [attr^=val]:匹配拥有attr属性,属性值以val开头的标签
  • [attr$=val]:匹配拥有attr属性,属性值以val结尾的标签
  • [attr*=val]:匹配拥有attr属性,属性值包含val的标签
v_hint:属性选择器权重等价于类选择器
v_test:掌握所有选择器,并熟知选择器优先级

盒模型

一、盒模型概念

  • 广义盒模型:文档中所有功能性及内容性标签,及文档中所有显示性标签
  • 侠义盒模型:文档中以块级形式存在的标签(块级标签拥有盒模型100%特性且最常用)
  • 盒模型组成:margin + border + padding + content
v_hint:content = width x height

二、盒模型成员介绍

1、content

  • 通过设置width与height来规定content
  • 块级标签可以设置自身宽高,默认宽为父级宽(width=auto)、高为0,高度可以由内容决定
  • 内联标签不可以设置自身宽高,默认宽高均为0,宽高一定由内容决定

2、border

  • border(边框)由border-width(宽度)、border-color(颜色)、border-style(风格)三部分组成
  • border成员:border-left、border-right、border-top、border-bottom
  • border-width成员:border-left-width、border-right-width、border-top-width、border-bottom-width
  • border-color成员:border-left-color、border-right-color、border-top-color、border-bottom-color
  • border-style成员:border-left-style、border-right-style、border-top-style、border-bottom-style
风格 解释
solid 实线
dashed 虚线
dotted 点状线
double 双实线
groove 槽状线
ridge 脊线
inset 内嵌效果线
outset 外凸效果线
v_hint:border满足整体设置语法,eg:border: 1px solid red;

3、padding

  • padding成员:padding-left、padding-right、padding-top、padding-bottom
  • padding整体设置
值得个数 方位
1 上下左右
2 上下 | 左右
3 上 | 左右 | 下
4 上 | 右 | 下 | 左

4、margin

  • margin成员:margin-left、margin-right、margin-top、margin-bottom
  • margin整体设置
赋值个数 方位
1 上下左右
2 上下 | 左右
3 上 | 左右 | 下
4 上 | 右 | 下 | 左

三、边界圆角

border-radius

  • border-radius成员
成员 解释
border-top-left-radius 左上 方位
border-top-right-radius 右上 方位
border-bottom-left-radius 左下 方位
border-bottom-right-radius 右下 方位
  • 单方位设置
赋值个数(值类型:长度 | 百分比) 解释
1 横纵
2 横 | 纵
  • 按角整体设置
赋值个数(值类型:长度 | 百分比) 解释
1 左上 右上 左下 右下
2 左上 右下 | 右上 左下
3 左上 | 右上 左下 | 右下
4 左上 | 右上 | 右下 | 左下
  • 分向整体设置
格式 解释
1 / 1 横向 | 纵向

四、其他相关属性

  • max|min-width|height
  • overflow
描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。
  • display
描述
inline 内联
block 块级
inline-block 内联块

标签

一、a标签

1、常用用法

<a href="https://www.baidu.com">前往百度</a>
<a href="./index.html">前往主页</a>

2、相对路径

以当前文件作为参考,.代表当前路径,..代表上一级目录

3、常用属性

title -- 链接说明
target -- _self | _blank -- 目标位置

4、其他用法

  • mailto:邮件给...
  • tel:电话给...
  • sms:信息给...

5、a标签reset操作

a {
color: #333;
text-decoration: none;
outline: 0;
}

6、锚点

① <a href="#tag">前往锚点</a> <a name="tag" des="锚点"></a>
② <a href="#tag">前往锚点</a> <i id="tag" des="锚点"></i>

7、鼠标样式

{
cursor: pointer | wait | move;
}

二、img标签

1、常用用法

<img src="https://image/icon.gif" />
<img src="./icon.gif" />

2、常用属性

alt -- 异常解释
title -- 图片解释

三、list列表

1、有序列表

<ol>
<li></li>
<li></li>
</ol>

2、无序列表

<ul>
<li></li>
<li></li>
</ul>

3、list的reset操作

ol, ul {
margin: 0;
padding: 0;
list-style:none;
}

伪类选择器

1、a标签四大伪类

  • :link:未访问状态
  • :hover:悬浮状态
  • :active:活跃状态
  • :visited:已访问状态

2、内容伪类

  • :before:内容之前
  • :after:内容之后
:before, :after {
content: "ctn";
}

3、索引伪类

  • :nth-child(n):位置优先,再匹配类型
  • :nth-of-type(n):类型优先,再匹配位置
v_hint:值可以为位置数,也可以为2n、3n...,代表2的倍数,3的倍数,且位置数从1开始

4、取反伪类

  • :not(selector):对selector进行取反

盒模型布局

1、盒模型布局基本介绍

  • 布局方位:margin-left、margin-right、margin-top、margin-bottom
  • 影响自身布局:margin-left、margin-top
  • 影响兄弟布局:margin-right、margin-bottom
  • 正向 / 反向:正值 / 负值

2、margin布局坑位

  • 很多语义标签具有默认margin
  • 父子标签margin-top重叠取大者
  • 兄弟标签margin-bottom、margin-top重叠取大者

day46的更多相关文章

  1. day46 html

    老师的笔记: day46 课程安排 HTML CSS JS基础 DOM操作 jQuery Bootstrap pymysql Django基础 项目实战 Vue.js 今日概要: "PUT ...

  2. day46——特殊符号、标签分类、标签

    day46 特殊符号  --空格 >大于号 <小于号 ... 找HTML特殊符号 标签分类 块级标签(行外标签):独占一行,可以包含内敛标签和某些块级标签,div,p,h1-h6,hr,f ...

  3. day46 前端基础HTML5+CSS3

    编辑器 pycharm,sublime,hbuild,webstorm,atom 前端概念 广义:用户能看见并且交互的显示页面 狭义:运行在浏览器上的页面 学习的语言 html5 => (h5架 ...

  4. Python:Day46 Javascript DOM

    history对象: History 对象包含用户(在浏览器窗口中)访问过的 URL.窗口之间是相互独立的. <input type="button" onclick=&qu ...

  5. python 全栈开发,Day46(列表标签,表格标签,表单标签,css的引入方式,css选择器)

    一.列表标签 列表标签分为三种. 1.无序列表<ul>,无序列表中的每一项是<li> 英文单词解释如下: ul:unordered list,“无序列表”的意思. li:lis ...

  6. HTML初识(Day46)

    一.HTML初识 1.web服务本质 import socket def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM ...

  7. js实现div闪烁-------Day46

    近期在学着用easyui,发现框架用起来果然是方便简洁,能弄出这框架的都是大神级别了吧,牛啊.... 今天碰到这个应用能够说是让我很之无语,整出源代码来一看就明确了.可之前却还是感觉很奇妙,我也经常告 ...

  8. Pyhton学习——Day46

    # 数据库:存储数据的仓库# 数据库更多的是安全.备份# 客户端取服务端的数据实际都是从服务端的内存中抓取数据# 数据库管理系统软件# 数据库管理系统(Database Management Syst ...

  9. (day46)DOM、BOM、事件

    目录 一.BOM (一)定义 (二)window对象 (三)window的子对象 (1)navigator对象 (2)screen对象 (3)history对象 (4)location对象 (5)弹出 ...

随机推荐

  1. 初学HTML-2

    HTML标签的分类:单标签:只有开始标签,没有结束标签,即,只由一个<>组成的html.     双标签:有开始标签和结束标签,即,由一个<>和一个</ >组成的h ...

  2. python-组合模式

    源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明: 组合模式主要用来处理一类具有“容器特征”的对象——它们即充当对象又可以作为容器包 ...

  3. ionic1 项目微信支付

    使用的插件参照地址:https://github.com/xu-li/cordova-plugin-wechat:(这里包含微信登录,微信分享和微信支付) 插件安装 cordova plugin ad ...

  4. Java 接口和抽象类区别(写的很好,转了)

    原文:http://blog.csdn.net/sunboard/article/details/3831823 1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是 ...

  5. 自定义适用于手机和平板电脑的 Dynamics 365(五):可视控件

    使用 适用于手机的 Dynamics 365 和平板电脑中的可视控件帮助移动用户更快地输入 Dynamics 365 数据并提供更丰富的可视体验. 此组自定义控件包括滑块.开关.星数评级.视频嵌入以及 ...

  6. Fedora16的双显卡切换问题

    症状:笔记本是Acer 4745G,安装了Fedora16+Win7 x64的双系统,每次开机后,独立显卡的风扇就开始狂转,同时笔记本的发热量极大,左侧出风口简直烫手.... 问题:Acer 4745 ...

  7. 2018-10-18 22:15:32 c language

    2018-10-18 22:15:32 c language 在屏幕上输出各种类型的数据 我们使用 puts 来输出字符串.puts 是 output string 的缩写,只能用来输出字符串,不能输 ...

  8. 页面可见性判断:document.hidden与visibilitychange事件

    我们需要在特定的时候判断页面的显示状态,例如:当视频加载到可播放状态时,根据用户是否停留在当前页面来决定是否开始自动播放.页面的展示的状态的判断就需要用到html5新增的一个api:document. ...

  9. go语言练习:数组

    1.创建数组: package main import "fmt" func main() { var lst = [3]int{1, 2, 3} //var name=[数量]类 ...

  10. 2018-9 Java.lang.StackOverflowError

    问题: Java.lang.StackOverflowError at com.**Logger.**.**.StringFilter.isValueNull(StringFilter.java:81 ...