css高级选择器&盒模型
css高级选择器&盒模型
1.组合选择器
群组选择器
/* 每个选择器为可以为三种基础选择器的任意一个,用逗号隔开,控制多个*/ div,.div,#div{ color:red }后代(子代)选择器
/*后代选择器:用空格将父级和子级连接*/ .sup .sub{ color:red } /*子代选择器:用 > 将父级和子级连接,即父级 > 子级*/ .sup > .sub{ color:red }1.子代选择器是(一级嵌套关系) 2.后代选择器(一级或者多级嵌套关系)兄弟(相邻)选择器
/*兄弟选择器:用~连接*/ .up ~ .down{ color:red } /*相邻选择器:用+连接*/ .up + .down{ color:red }1.相邻选择器必须为直接相邻关系(必须挨着) 2.兄弟选择器可以为直接或者间接相邻关系(必须是同一级,可以相邻,也可以相间)交集选择器
<div class="ss" id="dd"></div> div.ss.#dd{ color:red }
2.复杂选择器的优先等级
1.与修饰符位置无关
2.属性选择器与类选择器的优先级相同
3.优先级大前提: id选择器 无限大于 类选择器[属性选择器] 无限大于 标签选择器
4.优先级权重:
if id个数多,则优先级高,else 判断类选择器个数
if 类选择器个数多,则优先级高,else 判断标签选择器个数
if 标签选择器个数多,则优先级高,else 个数和类型均相同则由位置决定
3.伪类标签选择器
a标签四大伪类选择器
/*悬浮: 鼠标悬浮到链接上,链接显示红色*/ a:hover{color:red} /*访问时: 访问链接时,链接显示为绿色*/ a:active{color:green} /*未访问: 未访问链接时,链接为蓝色*/ a:link{color:blue} /*已访问状态: 访问过链接后,链接为黑色 注意浏览器会有记录*/ a:visiter{color:black}索引伪类选择器
/*位置优先: 每层结构中第一取出来,再匹配标签是否是section*/ section:nth-child(3) /*类型优先: 每层结构中先取出标签为section,然后在取出的section中匹配位置第一的*/ section:nth-of-type(1)1. 位置: 最后一个为last-child() 2. 类型: 最后一个为last-of-type()取反伪类选择器
/*先确定对谁取反,然后加上not*/ :not(nth-child(2))
4.盒模型
# 什么是盒模型?
通配选择器能够控制的页面标签都是盒模型(一般我们操作的都是块级标签)
# 盒模型由什么作用?
页面书写的标签初始状态级别都不能满足显示要求,需要再次再次修改,修改的就是盒模型的各个属性。
# 盒模型组成部分?
content(内容) + padding (内边框) + border (外边框) + margin(边距)
content(内容)
1.通过设置 width 和 height 来规定content 2.块级标签可以设置自身宽高,默认宽为父级宽(width=auto),高为0,高度可以由内容决定 3.内联标签不可以设置自身宽高,默认宽高均为0,宽高一定由内容决定 4.是子标签或子内容的显示区域# 1.参与盒子显示,颜色为background-colorpadding (内边框)
# padding 组成: padding-top|right|bottom|left# 1.参与盒子显示,颜色为背景色border (外边)
# border 组成 1.border-width border-top|right|tobbom|left-width 2.border-color border-top|right|tobbom|left-color 3.border-style border-top|right|tobbom|left-style# 1.border: 参与盒子显示,颜色由自己定义(transparent 为透明)margin (边距)
# margin 组成 margin-top|right|bottom|left# 1.没有颜色,不参与盒子显示,决定何止布局(位置信息)margin坑一:父子联动
当上下移动子box时,父级的box也会跟着移动/*解决方法:固定父级box的dorder或者padding*/ .sup{ border-top:1px solid transparent } /*解决方法二*/ .sup{ padding-top:1px ; }margin坑二:上兄弟margin-bottom与下兄弟margin-top重合
解决方法:只设置一个,建议设置下兄弟的margin-top
css高级选择器&盒模型的更多相关文章
- Python-ccs高级选择器 盒模型
css高级选择器与盒模型 脱离文档流 ,其中就是产生了BFC 1.组合选择器 - 群组选择器 /* 每个选择器位可以位三种基础选择器的任意一个, 用逗号隔开, 控制多个 */ div, #div, . ...
- web开发: css高级与盒模型
一.组合选择器 二.复制选择器优先级 三.伪类选择器 四.盒模型 五.盒模型显示区域 六.盒模型布局 一.组合选择器 <!DOCTYPE html> <html> <he ...
- 浅谈css中的盒模型(框模型)
css中的盒模型是css的基础,盒模型的理解可以帮助我们进行对样式进行修改.废话不多说,进入正题: 在w3c中,CSS 框模型 (Box Model) 规定了元素框处理元素内容.内边框.边框 和 外边 ...
- 李洪强和你一起学习前端之(6)css行高,盒模型,外边距
李洪强和你一起学习前端之(6)css行高,盒模型,外边距 复习昨天的知识 1.1css书写位置: 内嵌式写法 外联式写法 <link href = "1.css" rel = ...
- 87.CSS Flex 弹性盒模型布局教程(共用的css在48篇文章gird)
CSS Flex 弹性盒模型布局教程 Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性. flex布局就是给任何一个容器添加 dis ...
- day40 css高级选择器
一.高级选择器 高级选择器分为:后代选择器.子代选择器.并集选择器.交集选择器 后代选择器 使用空格表示后代选择器.顾名思义,父元素的后代(包括儿子,孙子,重孙子) .container p{ col ...
- (4)《Head First HTML与CSS》学习笔记---文本的CSS规则和盒模型;div与span;<a>元素的链接色;伪类
1.每个font-family包含一组共同特征的字体.共五个字体系列: sans-serif----这个系列包括了没有衬线的字体,与serif相比,通常认为这个系列更容易在计算机上识读. serif- ...
- 一分钟让你明白CSS中的盒模型
想必初学者对CSS盒模型总是很困惑吧.下面一分钟让你彻底明白盒模型: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" &q ...
- CSS学习笔记——盒模型,块级元素和行内元素的区别和特性
今天本来打算根据自己的计划进行前端自动化的学习的,无奈早上接到一个任务需求需要新增一个页面.自从因为工作需要转前端之后,自己的主要注意力几 乎都放在JavaScript上面了,对CSS和HTML这方面 ...
随机推荐
- SpringBoot +Jpa+ Hibernate+Mysql工程
1 使用工具workspace-sts 3.9.5.RELEASE (1)新建一个SpringBoot 项目,选择加载项目需要的的组件.DevTools,JPA,Web,Mysql. Finish. ...
- 我的hadoop学习之路
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS.HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上. Ha ...
- CentOS7下安装Gitlab社区版【安装步骤、IP改域名、修改端口】
这两天一直在给公司的服务器配置Gitlab(10.5.4).过程很是痛苦,所以把过程记录一下. 1.安装CentOS7 从官网上下载了最新版CentOS-7-x86_64-DVD-1708.iso.用 ...
- 使用@FeignClient时,报java.lang.NoClassDefFoundError: feign/Feign$Builder错
错误信息: Caused by: java.lang.ClassNotFoundException: feign.Feign$Builder at java.net.URLClassLoader.fi ...
- Shiro HashedCredentialsMatcher 认证匹配
Shiro 提供了用于加密密码和验证密码服务的 CredentialsMatcher 接口,而 HashedCredentialsMatcher 正是 CredentialsMatcher 的一个实现 ...
- yii2 basic版本的一些配置
1.nginx配置 重写规则 修改访问模式为 http://wh.store/admin/index 文件位置: /home/wwwroot/default/yii2-app-basic/config ...
- Python学习—基础篇之文件操作
文件操作 文件操作也是编程中需要熟练掌握的技能,尤其是在后台接口编写和数据分析过程中,对各种类型的文件进行操作,获取文件信息或者对信息进行存储是十分重要的.本篇博客中将主要对常见的文本格式文件和Exc ...
- 34 【kubernetes】安装手册
全文参考了两篇中文文档: 1,https://www.cnblogs.com/RainingNight/p/using-kubeadm-to-create-a-cluster.html 2,http: ...
- [Java核心技术]第四章-对象与类(4.1-4.6总结)
4.1面向对象程序设计概述 OOP(面向对象编程Object Oriented Programming) OOP中数据第一位,算法第二位. 类 封装:关键在于不能让其他方法直接访问类的实例域,程序仅通 ...
- Windows Server 2016离线安装.NET Framework 3.5
windows server 2016默认是不安装.netframework3.5的,可以在添加删除程序中单独添加.但是有时候系统安装文件不在的时候,找不到安装程序就不能安装成功. 这时候单独下载do ...