为什么我用only of type无法选中div标签?

<!DOCTYPE html>
<html lang="en">
<head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>Document</title>
      <style>
           div:only-of-type{background: red;}
      </style>
</head>
<body>
      <ul>
            <li></li>
            <div></div>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
      </ul>
</body>
</html>

 

div:only-of-type选择器没问题。
只不过你div中没有内容,div的高度默认为0,设置了background也看不见。
你给div中写些内容,或者设置下height
div:only-of-type{background: red; height: 50px;}
 

:only-of-type 选择器匹配属于其父元素的特定类型的唯一子元素的每个元素,div不适用

定义是指定属于父元素的特定类型的唯一子元素的每个 p 元素:

所以这段话的意思是 div:only-of-type可作用于 被包裹的唯一子元素 

<div><div id="test"></div></div> 你的这段css可以作用于id为test的div

或者<li><div></div></li> 或者删除其他的<li></li>你加了那么多li  这个div就不是唯一了

好使

你的div是个空的 没效果