CSS дочерний селектор меня смущает - PullRequest
0 голосов
/ 16 мая 2018

CSS

#nav > li {
  list-style:none;
  letter-spacing:3px;
  }
<ul id="nav">
  <li><a href="#">Home</a></li>
  <li><a href="#">About US</a></li>
  <li><a href="#">Services</a>
	<ul>
		<li><a href="#">Web Development</a></li>
		<li><a href="#">Mobile Development</a></li>
		<li><a href="#">Consultancy</a></li>
	</ul>
</li>
</ul>

Я использую дочерний селектор, чтобы сделать стиль списка нет, который только отменяет стили дочерних элементов списка. Но свойство letter-spacing добавляет интервалы к элементам списка внуков. Это меня смущает.

Ответы [ 2 ]

0 голосов
/ 16 мая 2018
#nav > li {
  list-style:none;
  letter-spacing:3px;
  ul{
    list-style:none;
    letter-spacing:0;
  }
}

или

#nav > li {
  list-style:none;
  letter-spacing:3px;
  ul{
    li{
      list-style:none;
      letter-spacing:0;
    }
  }
}
0 голосов
/ 16 мая 2018

Поведение по умолчанию letter-spacing, text-* и font-* должно наследоваться от родителя. Итак, вы сбросили на своих детей:

#nav > li {
  list-style: none;
  letter-spacing: 3px;
}
#nav > li li {
  letter-spacing: normal;
}
<ul id="nav">
  <li><a href="#">Home</a></li>
  <li><a href="#">About US</a></li>
  <li><a href="#">Services</a>
    <ul>
      <li><a href="#">Web Development</a></li>
      <li><a href="#">Mobile Development</a></li>
      <li><a href="#">Consultancy</a></li>
    </ul>
  </li>
</ul>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...