【发布时间】:2014-02-17 07:56:34
【问题描述】:
这相当简单,所以我确定我只是遗漏了一些明显的东西。
假设我有这个示例代码:
<main>
<header>Header</header>
<section>
Content
</section>
<section>
Content
</section>
<section>
Content
</section>
</main>
以及初始CSS:
main{text-align:center;}
section{display:inline-block;width:33%;}
所以我有三列或多或少占据页面的三分之一。现在,由于代码的编写方式,页面上会有空白。我首选的处理方法是设置*{font-size:small},然后添加body>main{font-size:0;}。
当然,在字体相同的简单页面上也可以。但是,这里和那里有不同大小的字体和标题标签,这效果不好。
我想我只是误解了> 选择器的作用,但我要寻找的是一个为元素设置样式的选择器,而不是将所述样式应用于子元素。在这种情况下,我想为我的主要元素设置样式,但我不希望样式影响页眉或部分元素。
这样做的正确方法是什么?
在任何人建议之前,不,我不希望使用其他方法来删除空格(HTML cmets,将结束标记的最后部分移动到下一行等),因为它们看起来很丑而且我希望我的代码看起来像我的页面一样美观。
【问题讨论】:
-
您没有误解
>选择器。问题在于继承。某些属性由元素的后代继承,即使您确保仅使用>将属性应用于该元素。您的问题的解决方案取决于正在使用的可继承属性。 -
好吧,因为我想删除元素之间的空白,我正在设置 font-size 属性。我唯一的问题是标题元素 h1 到 h6 发生了什么。我希望它们保持默认字体大小,但它们从父元素继承属性。我目前在 * 上将 font-size 设置为 small,但这会使 h1 到 h6 的大小与其他所有内容相同。
标签: html css css-selectors