CSS3

DawninShadow 2018-05-26 PM 1986℃ 0条

CSS3

虽然现在前端技能树愈加的复杂繁琐,但是CSS还是不得不学的东西

LESS/SCSS

  • 计算属性
  • 样式变量
  • 混合
  • 嵌套

伪元素与伪类

单冒号:用于 CSS3 伪类,双冒号::用于 CSS3 伪元素。对于 CSS2 中已经有的伪元素,例如 :before,单冒号和双冒号的写法 ::before 作用是一样的。

  • :focus 聚焦伪类(当前页面活的焦点的元素)
  • ::selection 选定伪元素(被鼠标点击拖动框出来的元素)

伪元素实例

浮动清除:

.clear:after {
    content: '';
    display: block;
    clear: both;
}

画分割线:

  .spliter::before, .spliter::after {
      content: '';
      display: inline-block;
      border-top: 1px solid black;
      width: 200px;
      margin: 5px;
    }

属性选择符

标签名[属性名]
p.s.

        img[title]  //带有title属性的img标签
        a[href^="http://"] //http连接
        a[href^="https://"] //https连接
        a[href~="www"] //含有www的连接
        

子代选择器

  • 空格 寻找所有小辈
  • 寻找直系子代

    • 寻找同辈

要选择的子元素:nth-child(在父级元素的位置) //所有父元素下的子节点都参与计数
p.s.
tr:nth-child(odd)//所有奇数的tr

父级元素 要选择的子元素类型:nth-of-type(在父级元素的位置) //只有对应类型的子节点参与计数

p.s.
body p:nth-child(3)//body内的第3个p

位置计数从1开始,odd为奇数,even为偶数,某数n (P.S. 3n)选取为所有某数 (P.S. 3)倍数的元素 ,之后再 + 某数为从第某数算起

p.s.
tr:nth-child(3n+4) //从第四个元素算起三的倍数

target选择器

众所周知,我们可以通过给a标签设置 # id的形式让页面进行跳转(页面跳转时# id会添加到当前url的最后).:target标签针对的就是id,用于获取当前正在被跳转的id(即此时出现在url内的id)可以通过为# id 和# id:target 设置不同的css样式做到很多很酷炫的事情

:not()选择符

区反选择符,括号内添加要取反的规则()

:empty

没有子元素的元素

input所属

  • :enabled 所有启用的
  • :disabled 所有禁用的
  • : checked 单个被选中的

a所属

  • :link 未被访问的
  • :visited 访问过的
  • :active 点击状态的

面试题补完计划

margin重叠

父子元素设置border, 相邻元素生成BFC布局

cookie 、sessionStorage、localStorage

cookie 存于本地,可由js编辑,长度相对较短,会发送给服务器,生命周期跟随页面
sessionSrorage 存于本地,长度高,生命周期跟随浏览器
localStorage 存于本地,长度高,生命周期跟随系统

BFC 布局(块级格式化上下文)

float属性不为none
position为absolute或fixed
display为inline-block, table-cell, table-caption, flex, inline-flex
overflow不为visible

垂直居中

{
    top:50;
    transform:translateY(-50%);
}
{
    left:0;
    right:0;
    margin:auto

}

{
    text-align:center;
        {
            display:inline-block;
        }
}


{
        float:left;
        postion: relative;
        width:100%;
        {
            clear: left; 
            float: left; 
            position: relative;
            left: 50%;
            text-align: center;
                {
                    display: block; 
                    float: left; 
                    position: relative; 
                    right: 50%;
                }
        }

}
  标签: CSS

非特殊说明,本博所有文章均为博主原创。

评论啦~