Что делает Asterisk (*) в селекторе CSS?

Я нашел этот CSS-код, и я запустил его, чтобы посмотреть, что он делает, и на нем нарисовал КАЖДЫЙ элемент на странице,

Может кто-нибудь объяснить, что делает Asterisk * в CSS?

<style>
* { outline: 2px dotted red }
* * { outline: 2px dotted green }
* * * { outline: 2px dotted orange }
* * * * { outline: 2px dotted blue }
* * * * * { outline: 1px solid red }
* * * * * * { outline: 1px solid green }
* * * * * * * { outline: 1px solid orange }
* * * * * * * * { outline: 1px solid blue }
</style>

Ответ 1

Это подстановочный знак, это означает, что он выберет все элементы внутри этой части DOM.

Например, если я хочу применить маржу к каждому элементу на моей странице, вы можете использовать:

* {
    margin: 10px;
}

Вы также можете использовать это в подвыборках, например, следующее добавило бы маржу ко всем элементам в теге абзаца:

p * {
    margin: 10px;
}

В вашем примере используется CSS-обход, чтобы применить последовательные границы и поля к элементам, чтобы дать им несколько цветных границ. Например, белая рамка, окруженная черной рамкой.

Ответ 2

CSS, который вы указали, очень полезен для веб-дизайнера для отладки проблем макета страницы. Я часто вывожу его на страницу временно, поэтому я могу видеть размер всех элементов страницы и отслеживать, например, ту, у которой слишком много отступов, которые подталкивают другие элементы к месту.

То же самое можно сделать только с первой строкой, но преимущество определения нескольких контуров заключается в том, что вы получаете визуальную подсказку через цвет границы для иерархии вложенных элементов страницы.

Ответ 3

* является подстановочным знаком. Это означает, что он применит стиль к любому элементу HTML. Дополнительно * применить стиль к соответствующему уровню вложенности.

Этот селектор будет применять разные цветные контуры для всех элементов страницы, в зависимости от уровня вложенности элементов.

Ответ 4

* действует как подстановочный знак, как и в большинстве других случаев.

Если вы выполните:

*{
  margin: 0px;
  padding: 0px;
  border: 1px solid red;
}

Затем все элементы HTML будут иметь эти стили.

Ответ 5

в вашей таблице стилей, обычно вам нужно определить основное правило для всех элементов, таких как атрибут размера шрифта и поля. {Размер шрифта: 14px; Маржа: 0; обивка: 0;} /overide браузера по умолчанию для элементов, весь размер шрифта текста будет отображаться как размер 14 пикселей с нулевым запасом и отступом, включая h1,... pre. */