一.选择器高级

      1.组合选择器:
/*群主选择器 : 同时可以控制多个选择器*/
/*#dd,div,#a{}*/ /* d{ 起相同类名
color: red;
}*/
举例:
.d1,.d2,.d3{
color: red
} 2.子代(后代)选择器:
/*子代(后代)选择器 : 根据父子结构控制目标子标签*/
/*明确选择器书写顺序: 目标inner, 再确定修饰词(哪个父亲,多少个父亲)*/
/*语法:子代>连接*/
举例:
.sub .inner{
color: green
}
.sub >.inner{
color: pink
}
/*语法: 后代 空格连接:*/
.sub .sub{
color: red
} 3.相邻选择器:
/*相邻选择器 : 根据兄弟控制目标下方兄弟标签*/
/*明确目标 => 添加修饰词*/
/*语法: 兄弟 ~ 连接*/
举例:
.ele1~.ele3{
color: blue
}
/*语法:相邻 + 连接*/
.ele1+.ele2{
color: yellow
} 4.交集选择器:
/*交集选择器 : 一个标签有多种选择器修饰,通过多种修饰找得一个目标标签*/
举例:
section#s.ss{
color: green
}
5.补充:
/*注: 每一个选择器位均可以为三个基础选择器中任意一个*/ 6.html标签快捷生成式:
6.1 <!-- .d${$$$}*3 -->
<div class="d1">001</div>
<div class="d1">002</div>
<div class="d1">003</div> 6.2 <!-- .sup>.sub>.inner -->
<div class="sup">
<div class="sub">
<div class="inner">inner</div>
</div>
</div> 6.3 <!-- .ele${e$}*3 -->
<div class="ele1">e1</div>
<div class="ele2">e2</div>
<div class="ele3">e3</div> 6.4 <!-- (section.ss#s{块区域}+section.ss{块区域}+.ss{块区域}) -->
<section class="ss" id="s">块区域</section>
<section class="ss">块区域</section>
<div class="ss">块区域</div> 二. 复杂选择器的优先级 1.与修饰符位置无关
2,属性选择器与类选择器权重相同
3.id 无限大于类(属性) 无限大于标签
4.权重只与个数相关,个数(类型)均相同时,最后位置决定 权重:
<!-- 优先级取决于权重,其实就是比较个数 -->
<!-- 1.不同的修饰符(后代/兄弟/交集...)均不影响权重 -->
<!-- 3.权重只和个数有关 -->
<!-- 4.id的权重无限大于class无限大于标签 -->
<!-- 5.属性选择器的权重与类一样 -->
<!-- 复习: 优先级来源(操作的是同一标签同一属性) --> 举例:
/*两个类名的选择器大于单个类名选择器*/
.d5{
font-size: 20px;
}
[aa]{
font-size: 50px;
}
/*模糊匹配*/
[aa*="b"]{
font-size: 60px;
}
/*每个选择器位也可以替换为一个组合选择器*/
.d3.d5{
font-size: 40px;
} body > .d1.b2.d5{
font-size: 50px;
}
/*.d1 div .d3.d5 优先级等于body > .d1.b2.d5 谁在下面谁起作用*/
.d1 div .d3.d5{
font-size: 70px;
}
#div{
font-size: 100px;
} 标签:
<div class="d1">
<div class="d2">
<div class="d3">
<div class="d4">
<div class="d5 aa="aa" id="div">12345</div>
<div class="d5 aa="bAAb">965746325</div>
</div>
</div>
</div>
</div> 三. 伪类选择器 1. a连接标签的四大伪类:
操作的是a,伪类是修饰词,不影响优先级
:hover (悬浮)
/*链接被鼠标悬浮*/
a:hover{
color: green;
/*鼠标样式 通用 pointer wait*/
cursor: pointer;
} :active (点击后)
/*链接处于激活状态*/
a:active{
color: red;
} :link ()
a:link{
color: red;
} :visited()
/*链接已经被访问过*/
a:visited{
color: #ccc
} 举例:
section{
width: 100px;
height: 100px;
background-color: orange
} /*同一结构下的第几个:先确定位置再匹配类型*/
section:nth-child(3),section:nth-child(5){
background-color: red
} a:nth-child(2){
color: yellow
} /*同一结构下的某选择器的第几个: 先确定类型再匹配位置*/
section:nth-of-type(1),section:nth-of-type(3){
background-color: cyan
} /*取反*/
section:not(:nth-of-type(2)){
background-color: pink
} 2. 位置相关
:nth-child()|:last-child 先确定位置再匹配类型
1. :nth-child 同一结构下的第几个:先确定位置再匹配类型
举例:
section:nth-child(3),section:nth-child(5){
background-color: red
} a:nth-child(2){
color: yellow
} :nth-of-type()先匹配类型再确定位置
2. :nth-of-type 同一结构下的某选择器的第几个: 先确定类型再匹配位置
举例:
section:nth-of-type(1),section:nth-of-type(3){
background-color: cyan
} 取反 选择器 :not(修饰词)|div:not(:nth-of-type(2))
3. :not 取反
举例:
section:not(:nth-of-type(2)){
background-color: pink
} 四. 盒模型 margin+ border + padding + content (width * height)都具有自身区域
margin参与布局 不参与盒子显示,其余都参加盒子显示
border 颜色自身定义,padding和content颜色由背景色填充 <!-- 什么是盒模型 : 通配选择器可以控制的页面标签都是盒模型(一般我们操作的是块级标签) -->
<!-- 为什么使用盒模型 :页面书写的标签初始状态基本都不能满足要求,需要再次修改,修改的就是盒模型的各个属性 -->
<!-- 盒模型的组成部分:margin(外边距)+boder(边框)+padding(内边距)+content(内容) -->
<!-- 注意点: 1.四部分均具有自身独立区域
2.content=width*height,是子标签或子内容的显示区域 --> 1./*content=width*height,颜色由背景色填充,参与盒子显示*/
.box{
width: 100px;
height: 100px;
background-color: red
} 2./*padding:颜色由背景色填充,参与盒子显示*/
.box{
border: 10px solid black;
} 3./*margin,没有颜色,不参与盒子显示,决定盒子布局(位置信息)*/
.box{
margin: 200px;
} 4./*display中如果是inline */ 5.标签
<div class="box"></div> 整体设置:
padding : 上 右 下 左(无值取对边) 分开设置:
padding-top : 10px;
padding-right : 10px;
padding-bottom : 10px;
padding-left : 10px; 整体设置;
border : 10px solid #af3; 分开设置:
border-top: 50px solid red;
border-right: 50px solid pink;
border-bottom: 50px solid orange;
border-left: 50px solid blue; 五.盒模型布局:
完成自身布局:margin-left|margin-top
上移|右移 : top取正值|left取正值
下移|左移 : top取负值|left取负值 举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>盒模型布局</title>
<style type="text/css">
/*body默认有margin:8px,做项目时一定会清除*/
/*清除系统默认(不喜欢)样式,该操作称之为reset操作*/
body{
margin: 0;
}
/*block盒子,宽度自适应父级,高度由子级撑开*/
.box{
height: 200px;
width: 200px;
background-color: orange;
}
.b1{
/*margin: 50px;*/
margin-top: 50px;
margin-left: 50px;
}
/*只有margin-left|top用于完成自身布局*/
.b2{
/*水平居中:在父级水平居中*/
/*display: inline-block;*/
/*auto自适应剩余空白区域*/
margin-left: auto;
margin-right: auto; /*实现居右50px*/
margin-left: auto;
margin-right: 50px; /*b2上移与b1并排*/
margin-top: -200px
} /*a标签的reset操作*/
a{
color: black;
text-decoration: none;
}
/*h1标签的reset操作*/
h1{
margin: 0;
} /*margin-right|bottom影响兄弟布局*/
.up{
/*bottom会影响之下的兄弟,往下挤*/
/*margin-bottom: 30px;*/
/*right会影响右方的兄弟,往右挤*/
/*margin-right: 30px;*/
}
.down{
/*上下兄弟的距离取最大值 => margin-top的坑*/
margin-top: 30px;
} </style>
<style type="text/css">
.sup {
width: 200px;
height: 200px;
background-color: pink;
margin-top: 50px;
}
.sub {
/*父子top取最大值 => margin-top的坑(父级只与第一个子级联动)*/
width: 100px;
height: 100px;
background-color: brown;
margin-top: 50px;
}
/*拆散父子(第一子)*/
/*1.设置父级的border-top即可*/
/*2.或者设置父级的padding-top即可*/
</style>
</head>
<body>
<div class="box"></div>
<a href="#">123</a>
<h1>123</h1>
<div class="box b1"></div>
<div class="box b2"></div> <div class="up"></div>
<div class="down"></div>
<div class="sup">
<div class="sub"></div>
</div>
</body>
</html>

选择器(&伪)/盒模型的更多相关文章

  1. 第五十六 css选择器和盒模型

    1.组合选择器 群组选择器 #每个选择为可以位三种基础选择器任意一个,用逗号隔开,控制多个. div,#div,.div{ color:red } 后代(子代)选择器 .sup .sub{ 后代 } ...

  2. css 选择器;盒模型

    一.引入方式:(1)CSS 层叠样式表 作用:修饰网页结构 (2)css的三种引入方式 - 行内样式 注意:行内样式的优先级是最高的 - 内接样式 - 外接样式 二.css选择器 基础选择器 * 通配 ...

  3. Python-ccs高级选择器 盒模型

    css高级选择器与盒模型 脱离文档流 ,其中就是产生了BFC 1.组合选择器 - 群组选择器 /* 每个选择器位可以位三种基础选择器的任意一个, 用逗号隔开, 控制多个 */ div, #div, . ...

  4. 前端笔记之HTML5&CSS3(中)选择器&伪类伪元素&CSS3效果&渐变背景&过渡

    一.CSS3选择器 CSS3是CSS的第三代版本,新增了很多功能,例如:强大的选择器.盒模型.圆角.渐变.动画.2D/3D转换.文字特效等. CSS3和HTML5没有任何关系!HTML5骨架中,可以用 ...

  5. python 全栈开发,Day47(行级块级标签,高级选择器,属性选择器,伪类选择器,伪元素选择器,css的继承性和层叠性,层叠性权重相同处理,盒模型,padding,border,margin)

    一.HTML中的行级标签和块级标签 块级标签 常见的块级标签:div,p,h1-h6,ul,li,dl,dt,dd 1.独占一行,不和其他元素待在同一行2.能设置宽高3.如果不设置宽高,默认为body ...

  6. 任务二:1、选择器 2、连接集中状态的顺序 3、浮动的用发和原理 4、盒模型在IE和Google等不同浏览器的区别与联系

    1.选择器类型 标签选择器,类选择器,ID选择器,组合选择器,伪类和伪元素,属性选择器,子选择器,同胞选择器, :not()选择器 1.同胞选择器 相邻同胞标签: h2 + p{ color:red; ...

  7. 【CSS】盒模型+选择器(你选择的要操作的对象)

    盒模型 转http://www.cnblogs.com/cchyao/archive/2010/07/12/1775846.html 1.w3c标准的盒模型和ie的盒模型主要差别在于content的w ...

  8. css高级选择器&盒模型

    css高级选择器&盒模型 1.组合选择器 群组选择器 /* 每个选择器为可以为三种基础选择器的任意一个,用逗号隔开,控制多个*/ div,.div,#div{ color:red } 后代(子 ...

  9. (4)《Head First HTML与CSS》学习笔记---文本的CSS规则和盒模型;div与span;<a>元素的链接色;伪类

    1.每个font-family包含一组共同特征的字体.共五个字体系列: sans-serif----这个系列包括了没有衬线的字体,与serif相比,通常认为这个系列更容易在计算机上识读. serif- ...

随机推荐

  1. Calendar Game HDU - 1079

    Adam and Eve enter this year’s ACM International Collegiate Programming Contest. Last night, they pl ...

  2. 关于*[pylint]E1101:Module 'xxx' has no 'xxx' member* 简单而有效的解决办法

    关于 pylint 的 *E1101* 错误: 概念: %s %r has no %r member Function %r has no %r member Variable %r has no % ...

  3. apache2反向代理

    1.安装 Apache2 sudo apt-get install apache2 2.重启服务器 sudo /etc/init.d/apache2 restart 3.虚拟主机配置 启用这几个模块 ...

  4. 51nod1647 小Z的trie

    题意:给你n个字符串,m次查询,每次问你第p个字符串的s到t的字符串在n个字符串建成的字典树上出现了多少次 题解:先建出字典树,在字典树上拓展sam,记录每个子串的出现次数.查询时只需找出在字典树上的 ...

  5. Rest Client插件简单介绍

    一.这插件是做什么的? 快速测试服务的. 和mockmvc功能差不多,可视化操作更直观一点. 如果使用mockmvc漏掉了一个返回值的验证,可能还需要修改再次启动 使用插件的优点是 1.如果服务端没问 ...

  6. AWS EC2 MySQL迁移到RDS案例

    Amazon Relational Database Service (Amazon RDS) 是一种Web 服务,可让用户更轻松地在云中设置.操作和扩展关系数据库.它可以为行业标准关系数据库提供经济 ...

  7. [codechef July Challenge 2017] Calculator

    CALC: 计算器题目描述大厨有一个计算器,计算器上有两个屏幕和两个按钮.初始时每个屏幕上显示的都是 0.每按一次第一个按钮,就会让第一个屏幕上显示的数字加 1,同时消耗 1 单位的能量.每按一次第二 ...

  8. weblogic为同一domain下的不同server添加不同参数

    一.背景 今天应用提需求说:现有一应用部署在多个server上,该应用会使用Ddubbo.protocol.port参数指定的端口去启动dubbo,现在想要做到的效果是为每个server的Ddubbo ...

  9. Python爬虫关于多层嵌套iframe的解决

    近期由于公司资源需要,我爬取了一个视频网站,结果以为一个很容易的小爬虫,却步步是坑啊,费了一天终于都解决了(太菜了!!!). 前面导航页的爬虫就不多说了,无非就是webdriver和PhantomJS ...

  10. 模块之 logging, shelve, sys 模块

    一. logging模块 用来记录日志,日志:记录某个时间点发生了什么事 日志作用:程序调试 了解软件程序的运行情况,是否正常 软件程序运行故障分析与问题定位 还可用来做用户行为分析 日志等级:在不改 ...