css – 所有浏览器中的边距和填充最不平衡的东西?

有些人使用此重置.
* {
保证金:0;
填充:0;
}

每个元素在每个浏览器认样式表中都有认的边距和填充(但不同)?

虽然eric meyer收集了一些最常用的选择器并将其交给所有人

{
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

这些元素是否具有不同类型的字体大小?
不同的基线,不同的背景,轮廓和边界?

如果我们保持除了通用选择器的缺点.

这是

* {
        margin: 0;
        padding: 0;
        border: 0;
        outline: 0;
        font-size: 100%;
        vertical-align: baseline;
        background: transparent;
    }

比这更好

* {
  margin: 0;
  padding: 0;
}

解决方法

您可以在此处找到所有认样式: CSS2.1 User Agent Style Sheet Defaults.

如果仔细研究列表,那么您会注意到浏览器特定的边距仅设置为HTML-standard block elements,并且没有设置特定于浏览器的填充.换句话说,填充:0是多余的.但实际上,边际是浏览器中最不平衡的,以回答您的实际问题.

我可能会在这里踩到某个人的脚趾,但我最简单地认为使用CSS重置样式表是荒谬的.无论如何,你必须自己重新定义大部分边距(和填充).你可以很好地学习并保持自己的规则来定义你将要在文档中使用的每个块元素的边距(以及必要的填充).

至于重置的残余:

>边界:0也是超级的. < hr>并且大多数表单输入元素是唯一具有认边框的元素.没有它,< hr>是不可见的(实际上,这在IE6 / 7中失败)并且具有相同背景颜色的表单上的文本输入元素也是不可见的.
>当然不应该重置大纲,它会破坏可访问性.你需要自己控制它,例如仅在具有(背景)图像的链接上自行重置它,因为这是重置它的主要原因.但是,它仍然打破了可访问性.而是考虑给它一个不同的轮廓颜色或样式,以便它仍然可见,但不那么令人不安.
> font-size:100%会强制您在< h1>,< h2>等元素中自行重新定义它们.但即使没有重置,你仍然会喜欢这样做.那么重置有什么意义呢?
> vertical-align:baseline;打破< sub>的对齐和< sup>这样他们看起来像< small>.此外,表头也可能受到影响.在所有浏览器中,这些认为中间.您需要再次自己重新定义它们.此外,众所周知,此重置可能会导致IE6 / 7对图像造成严重破坏.
>背景值:透明;我不清楚.我没有看到任何重置的期望它可能会让IE6 / 7发疯.您还需要再次自己重新定义所有表单输入元素的背景颜色,这只会增加更多工作(对于它们放置在彩色容器中的情况).我确信无论何时遇到需要透明背景的元素,您都可以轻松发现自己并自行设置.

Enfin,看看你对这些信息的处理方式.我不会阻止你使用CSS重置.我自己已经发现CSS重置只有10年前我才开始使用HTML / CSS.但是,经过多年和岁月,我也学到了这一点,这简直是胡说八道.但我承认,它对初学者很有用,因为重置会迫使他们明确地设置边距和其他东西.如果没有重置,你可以做得很好.

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效