day14/流式布局/媒体查询/选择器

流式布局

流式布局,就是百分比布局

高度的百分比是基于父元素的百分比进行渲染的,因此使用百分比作为高度,他的父级必须定高

特殊属性百分比
元素的magin-top,margin-bottom,padding-top,padding-bottom他们的百分比设置都是基于父元素宽度的百分比

line-height 如果设置百分比,不是基于父元素的line-height值,而是基于他子级字号的百分比

媒体查询

媒体查询 根据不同设备的宽度,设置不同的样式
关键字是 @media
属性
only 指的是只针对某一种设备
not 不针对某一种设备
screen 电脑屏幕,手机,iPad 设备中的一种,print 打印机,speech 盲人听读机,all 指的是所有设备
and 链接后面括号中条件的关键字,and的左右两边必须又空格
()在括号里面可以设置条件,它里面的条件一般都是 max-width min-width 的设置
{} 满足条件的时候的设置的css样式必须书写在{}中

注意事项:媒体查询不提供优先级,因此,需要把媒体查询的样式最后加载,基础样式写在媒体查询的前面,这样才不会覆盖媒体查询的样式

    @media only screen and (max-width:800px) and (min-width:600px){
            .wp{
                height: 150px;
            }
            .left{
                background: #ccc;
            }
        }
        @media only screen and (min-width:1000px) {
            .right{
                background: #ff0;
            }
        }

外部引入媒体查询

<link rel="stylesheet" href="./css/c800.css" media="only screen and (min-width:800px) and (max-width:1000px)">
    <link rel="stylesheet" href="./css/c1000.css" media="only screen and (min-width:1000px)">

属性选择器
以下 E代表标签名,attr 表示属性名,val表示属性值
1. E[attr] 选择所有具有attr属性的E元素
2.E[attr=val] 选择所有具有attr属性并且它的值是val的E元素
3.E[attr~=val]选择所有具有attr属性并且他的值包含val的E元素
4.E[attr|=val]选择所有具有attr属性并且他的值是以val或者val-开头的E元素
5.E[attr*=val]选择所有具有attr属性并且他的值具有val字符的E元素
6.E[attr$=val]选择所有具有attr属性并且他的值是以val字符结束的E元素
7.E[attr^=val]选择所有具有attr属性并且他的值是以val字符开始的E元素

伪类选择器

focus 为所有获取焦点的input设置样式
disabled 为所有被禁用的input设置样式
:target 目标伪类选择器,当跳转到他所修饰的元素的时候,才会执行该选择器修饰的样式
root 表示的是html

E:empty 选中所有内容为空的E标签,并添加样式
:empty 选中所有内容为空的标签,并添加样式

E:only-child 选中父元素中只有一个E标签的E标签并添加样式,独生子标签

伪元素选择器

伪元素选择器:通过伪元素选择器可以给元素添加类似子元素的内容,他不是真正的标签
使用伪元素需要添加::
::first-letter表示修改第一个字符
::first-line表示修改第一行字符
::before 在元素内容的最前面添加一个伪元素
::after 在元素内容的最后面添加一个伪元素

结构伪类选择器

父级E:==nth-child(num)==选中同一个父级下排名次序为num的E元素
num从1开始

使用n表达式设置选中的标签,n从0开始计算
偶数使用 2n
E:nth-child(2n)
奇数使用2n+1
E:nth-child(2n+1)

也可以使用odd 表示奇数
even表示偶数

E:nth-last-child(num) 表示从后开始往前数,使用方式和nth-child一样,也就是倒着计算

如果父元素中的子元素不是同一个类型,则不能使用nth-child(num)来设置css,因为匹配到的元素是不对的
使用nth-of-type来匹配元素,他的意思是,找到和E标签同类型的第num个元素

E:nth-last-of-type(num)使用方法和nth-of-type一样,只是倒着数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值