前端学习第八课(CSS选择器优先级和盒子模型)

1.css复合选择器

CSS选择器分为 基础选择器 和 复合选择器 ,但是基础选择器不能满足我们实际开发中,快速高效的选择标签。

1.1后代选择器

后代选择器又称为包含选择器,用来选择元素或元素组的子孙后代,其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔,先写父亲爷爷,在写儿子孙子。

例:

<div id="app">

<div class="header"></div>

        <div class="footer"></div>    

</div>

<style>

#app .header{

height: 100px;

width: 100px;

background-color: violet;

}

</style>

1.2子元素选择器

子元素选择器只能选择作为某元素子元素(亲儿子)的元素。

语法:

.class>h3{color:red;font-size:14px;}

这里的子 指的是 亲儿子 不包含孙子 重孙子之类。

例如:

 #app> .header {

            height: 100px;

            width: 100px;

            background-color: red;

        }

<div id="app">

        <div class="parent">

            <div class="header"></div>

        </div>

        <div class="header"></div>

    </div>

1.3交集选择器

交集选择器由两个选择器构成,找到的标签必须满足:既有标签一的特点,也有标签二的特点。

语法:

h1.header{属性:值;}

其中第一个为标签选择器,第二个为class选择器,两个选择器之间不能有空格,如h3.special。

1.4并集选择器

并集选择器(CSS选择器分组)是各个选择器通过,连接而成的,通常用于集体声明。

语法:

#p1,.hello,h1{属性:属性值}

各个选择器之间用,隔开任何形式的选择器都可以作为并集选择器的一部分。

例如:

#p1,.hello,h1{

            font-size: 50px;

            color: blueviolet;

        }

<h1>helloworld</h1>

<div class="hello">helloworld</div>

<p id="p1">helloworld</p>

实现效果:

 1.5链接伪类选择器

用于向某些选择器添加特殊的效果。比如给链接添加特殊效果, 比如可以选择 第1个,第n个元素。

  • a:link /* 未访问的链接 */

  • a:visited /* 已访问的链接 */

  • a:hover /* 鼠标移动到链接上 */

  • a:active /* 选定的链接 */

:target伪类用来改变页面中锚链接URL所指向的ID元素的样式

:focus 伪类在元素获得焦点时向元素添加特殊的样式。  

:focus-within 是一个CSS 伪类 ,表示一个元素或其后代元素获得焦点

:focus-visible当元素匹配伪类并且客户端(UA)的启发式引擎决定焦点应当可见(在这种情况下很多浏览器默认显示“焦点框”。)

1.6复合选择器总结

选择器作用特征使用情况隔开符号及用法
后代选择器用来选择元素后代是选择所有的子孙后代较多符号是空格 .nav a
子代选择器选择 最近一级元素只选亲儿子较少符号是> .nav>p
交集选择器选择两个标签交集的部分既是 又是较少没有符号 p.one
并集选择器选择某些相同样式的选择器可以用于集体声明较多符号是逗号 .nav, .header
链接伪类选择器给链接更改状态较多重点记住 a{} 和 a:hover 实际开发的写法

2.标签显示模式(display)

HTML标签一般分为块标签和行内标签两种类型,它们也称块元素和行内元素。 我们网页的标签非常多,在不同地方会用到不同类型的标签,以便更好的完成我们的网页。

元素模式元素排列设置样式默认宽度包含
块级元素一行只能放一个块级元素可以设置宽度高度容器的100%容器级可以包含任何标签
行内元素一行可以放多个行内元素不可以直接设置宽度高度它本身内容的宽度容纳文本或则其他行内元素
行内块元素一行放多个行内块元素可以设置宽度和高度它本身内容的宽度

 1)常见的块级元素:<h1>~<h6>、<p>、<div>、<ul>、<ol>、<li>等,其中<div>标签是最典型的块元素。

2)常见的行内元素:<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span>等,其中<span>标签最典型的行内元素。有的地方也成内联元素

3)行内块元素:在行内元素中有几个特殊的标签——<img />、<input />、<td>,可以对它们设置宽高和对齐属性,有些资料可能会称它们为行内块元素。

语法:display:inline-block;

4)标签显示模式转换

  • 块转行内:display:inline;

  • 行内转块:display:block;

  • 块、行内元素转换为行内块: display: inline-block;

3.行高

行高为文字基线之间间距。

1)单行文本垂直居中:文字行高等于盒子高度。

4.背景

4.1背景颜色

语法:

background-color:颜色值;   默认的值是 transparent  透明的

4.2背景图片

语法:

background-image : none | url (url);

图片背景是否重复

background-repeat: repeat-x;背景图像在横向上平铺

background-repeat:repeat-y ;背景图像在纵向平铺

background-repeat:repeat;背景图像在纵向和横向上平铺(默认的)

background-repeat:no-repeat;背景图像不平铺

4.3背景尺寸大小

background-size:contain;如果图片较大,会自动缩小图片使图片包含在里面。

background-size:cover;如果图片比较小,自动放大图片铺满容器。

但图片的宽高比不变,也可以设置百分比和固定值:

background-size:50%;

background-size:30px:

background-size:30px 50px;设置宽度和高度

4.4背景位置

x,y第一个设置水平移动的位置,水平向右为正方向,都二哥设置竖直移动的位置

background-position :x y;可用像素值、百分比和方位词(top,center,bottom,left,right)设置

4.5背景附着

背景附着就是解释背景是滚动的还是固定的。

background-attachment : scroll | fixed;

scroll为背景图像是随对象内容滚动的;fixed表示背景图像固定;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HM-hhxx!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值