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

yws3nbqq  于 2022-12-01  发布在  其他
关注(0)|答案(9)|浏览(762)

我一直在看像Facebook和Youtube这样的许多网站的CSS文件。
在几乎所有这些代码中,我都看到这样的代码:

* {
margin: 0;
padding: 0;
}

这很奇怪,因为在chrome web developer tools中删除这个块并不会影响页面的布局。
此代码的含义是什么?何时使用它?为什么使用?

zfycwa2u

zfycwa2u1#

这是一种叫做CSS重置的常用技术。不同的浏览器使用不同的默认边距,导致网站看起来不同的边距。*表示“所有元素”(universal selector),所以我们将所有元素设置为零边距和零填充,从而使它们在所有浏览器中看起来都一样。

efzxgjgh

efzxgjgh2#

星号(*)是通配符,表示所有元素。

* {
    margin: 0;
}

会将所有项目的边界设定为0。

7cwmlq89

7cwmlq893#

*是通配符
这意味着将这些样式应用于所有元素。
在本例中,它将所有元素上的marginpadding设置为0。这与重置CSS文件很常见,目的是将不同元素上的所有本地浏览器边距/填充默认为一个公共值。

cbjzeqam

cbjzeqam4#

它将页面上所有HTML元素的边距和填充重置为0。
有些浏览器可能已经默认这样做了,但它总是有用的尝试手动重置一切,以防万一。
事实上,许多网站都有reset.css(或类似的),当打开它时,你会注意到许多规则来重置每个浏览器的一切。

smdnsysy

smdnsysy5#

它是一个通配符,将所有HTML元素的marginpadding设置为0
试一个更有趣的无双:

* {
    font-size: 20pt;
}
zpjtge22

zpjtge226#

在CSS中,除了你的样式之外,还有一些默认的样式应用到每个网页上。这些默认的样式定义了paddingmargin值,比如<h1>, <li>, <p>, <table>等。令人讨厌的是,你经常需要覆盖这些样式来让你的页面看起来正确。但并不是所有的浏览器制造商都同意默认值。通常大多数开发人员发现,将所有的paddingmargins重置为zero是最简单的,这样一切都能按预期运行。*wildcard选择器,将匹配所有元素类型。基本上,该样式表示将所有元素的所有填充/边距重置为零,从而删除所有默认样式。

ny6fqffe

ny6fqffe7#

这是css重置的一个常见部分。这基本上将所有(*)元素的边距和填充值设置为0。然后,您可以根据自己的要求为每个元素添加自己的边距和填充值。

ddrv8njm

ddrv8njm8#

*是一个通配符,它选择所有元素margin: 0;,并且padding: 0;将所选元素的边距和填充设置为0,在本例中为所有元素。
这对网站开发来说非常方便,我在我构建的每个网站中都使用它。

vd8tlhqk

vd8tlhqk9#

基本上它是一个外卡。尝试这个有一个更好的看法:

div * {
//code here
}

相关问题