<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.biao:first-child{
color: red;
}
</style>
</head>
<body>
<ul>
<li>列表1</li>
<li class="biao">列表2</li>
<li>列表3</li>
<li>列表4</li>
<li>列表5</li>
</ul>
</body>
</html>
使用:first-child伪类时一定要保证前面没有兄弟节点,或者用一个div包裹住
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
.biao:first-child {
color: red;
}
</style>
</head>
<body>
<ul>
<!-- <li>列表1</li> -->
<li class="biao">列表2</li>
<li>列表3</li>
<div>
<li class="biao">被div包裹住的li</li>
</div>
<li>列表5</li>
</ul>
</body>
</html>
<style>
li:first-child{
color: red;
}
</style>
改成这样就可以了
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.biao{
color: red;
}
</style>
</head>
<body>
<ul>
<li>列表1</li>
<li class="biao">列表2</li>
<li>列表3</li>
<li>列表4</li>
<li>列表5</li>
</ul>
</body>
</html>
如果你想让ul的第一个元素变红,那么class应该应用于ul
css只作用于引用了它的那一部分
它不是js,不去自动找文档里的其他部分
你不能整个页面只有一个li引用class,然后在里面写个复杂的表达式调整整个页面的布局,那是行不通的
:first-child表示在一组兄弟元素中的第一个元素