CSS中的"*"是什么意思?

H B*_*amy 43 css css-selectors

我一直在寻找Facebook和Youtube等许多网站的CSS文件.

在几乎所有这些中我都看到了这段代码:

* {
margin: 0;
padding: 0;
}
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为在chrome web开发人员工具中删除该块不会影响页面的布局.

这段代码意味着什么,何时使用以及为什么?

vcs*_*nes 64

这是一种称为CSS重置的常用技术.不同的浏览器使用不同的默认边距,导致网站看起来与边距不同.的*意思是"所有元素"(一个普遍的选择),所以我们设置所有的元素具有零页边距,和零填充,从而使它们看起来一样在所有浏览器.


Cur*_*urt 9

* 是一个通配符

这意味着将这些样式应用于所有元素.

在这个例子中,它设置marginpadding所有元素0.这对于重置CSS文件很常见,以便将不同元素上的所有本机浏览器边距/填充默认为公共值.


Hau*_*eth 8

Asterisk(*)是一个通配符,表示所有元素.

* {
    margin: 0;
}
Run Code Online (Sandbox Code Playgroud)

将所有元素的边距设置为0.