<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box1,.box2{
            width: 200px;
            height: 100px;
            background-color: #ff0789;
            transition: 2s;
        }
        .box1:hover+.box2{
            background-color: greenyellow;
        }
        .box2:active{
            background-color: aqua;
        }
        ul li{
            background-color: #ff0789;
        }
        ul :nth-child(odd){
            background-color: aqua;
        }
    </style>
</head>
<body>
<div class="box1"></div>
<div class="box2"></div>
<ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
<!--
    后代选择器  .box1 .box2  选择.box1的后代元素.box2
    子代选择器  .box1>.box2  选择.box1的子代元素.box2
    并列选择器  .box1,.box2  选择.box1和.box2
    相邻兄弟选择器  .box1+.box2  选择.box1的相邻兄弟.box2
    普通兄弟选择器  .box1~.box2  选择.box1的普通兄弟.box2

    动态伪类选择器
    a:link       选择未被访问过的a标签
    a:visited    选择已被访问过的a标签

    :hover      选择鼠标经过时的元素
    :active     选择鼠标点击时的元素

    这两个元素可以给最初设置颜色(原始颜色)的地方给一个transition: 2s;渐变一下子
    而且只能检测到数值到数值的变换,不能检测单词到单词

    css3新增选择器

    ul li:nth-child(值)  从上到下选择第几个子元素
    简答写法 ul :nth-child
    2   可以取任意整数
    odd/even    odd奇数even整数
    3n+1    选择符合表达式的元素  n的取值[0,无穷大)
    :nth-last-child(值)  从下到上选择第几个子元素  取值一样

    :nth-of-type(值) 从上到下选择每一类标签的第几个子元素
    :nth-last-of-type(值)

    :empty  选择没有(子元素/文本)的元素
    :not(选择器)  取反选择器 ul :not(.on)选择ul子代class名不为on的标签
    :first-child  选择第一个子级元素
    :last-child  选择最后一个子级元素

    [属性名]  属性选择器

    [class]  选择有class的标签
    [class='box']  选择有class并且值为box的标签
    [class*='box']  选择有class并且值中含有box的标签
    [class^='box']  选择有class并且值中含有以box开头的标签
    [class$='box']  选择有class并且值中含有以box结束的标签

    伪元素选择器
    :first-letter  选择元素的第一个文字
    :first-line  选择元素的第一行文字
    :before  在元素内容前插入内容
    :later  在元素内容后面插入内容
    before和after必须要用content激活
    ::selection  选择被用户选择的元素

    伪元素  相当于一个假的元素  元素选择器
    伪类  相当于一个假的类名  类(class)选择器  真假选择器的权重是一样的

    推荐代码顺序
    1布局定位属性  content/display/position(对应方位值)/float/overflow/list-style
    2自身属性  width/height/padding/margin/background/border
    3文字属性  color/font/text-decoration/vertical-align
    4其他/css3新增属性  cursor/border-radius/box-shadow/text-shadow

-->
</body>
</html>