|
|
1
27
在使用时,这是一个有趣、微妙但重要的考虑因素。
简短的回答是:设置
这样做的原因是,内联块被视为文本,因此受到基于文本的属性(如行高和垂直对齐)的影响。 较长的答案如下: CSS3规范深入探讨了盒模型的工作方式(可能令人困惑)。下面是CSS3 Box规范的引用,其中我突出显示了与此问题相关的部分:
让我们检查一下流根的自动高度是多少:
线盒零件是感兴趣的。这实际上意味着任何设置为显示为内联块的内容都受制于纯文本使用的隐式方框布局。
你现在可以猜出为什么设置
这个
让我们回到CSS 2.1规范,它在 explaining line boxes :
从这个解释中,我们看到
因此,我们的内联块元素的高度受其隐式线框高度计算的影响,这些计算反过来又受到这些垂直对齐计算的影响。 因此,当我们不使用基线作为内联块的垂直对齐时,该框的隐式行框将缩小到它可以缩小的最小大小。 迷惑?是的。回到简短的答案:) |
|
|
2
44
我的一个网站也有同样的问题。 我找到了这个答案 here : “对于HTML5 doctype,图像接收的似乎是文本通常获得的行高属性,因此在图像下方会得到一个页边距。您可以将它们设置为display:block或line height:0,尽管我没有对后者进行足够的测试,以确保它是一个很好的修复。”
我申请了
|
|
|
3
10
|
|
|
4
2
试试这个: CSS:
|
|
|
5
1
我在将XHTML 4网站升级到HTML5时遇到了同样的问题。我有很多这样的东西:
最后在图像周围加上了神奇的填充物。对于我来说,解决方案很简单——添加这个CSS:
|
|
|
6
0
伙计,你有两个流浪汉
|
|
|
7
0
我从未使用过
这似乎解决了你所有的问题(我无法详细解释),并提供了更合适的风格。 |
|
|
8
-2
真的。@马特是对的(不是在这种情况下),这是常识,但你们都错了。 伙计,看看你的CSS,你有 pagetab背景色:ff2d00;填充:0px 4px;页边距:0;显示:内联块;pagetab ul列表样式:无;页边距:0px;填充:0px 4px;显示:block;因为… 因此第二个声明位于pagetab中出现的嵌套ul上。你没有这些。 我把保险商实验室从声明中去掉了,所以它们是正确的元素。现在你的CSS有两种风格可以同时匹配(在你的通用选择器中也被称为(fyi,它位于你身体的上方声明)),所以这是3种风格……过度杀戮。此外,那些不匹配的,您将其设置为显示:内联块,然后将其重置为块…我在这个逻辑中迷失了。 所以 举个例子。将两页选项卡样式更改为 PaGETAB {
} PaGETAB {
} 保存它。现在把它脱掉,另存为2。在7的ff3.6中,它们是相同的。 如果您将使用专门为解决/预防此类问题而提供的验证器,以及QA工具(特别是这里,我讲的是dust me selectors bookmarklet),那么您将在不时间内解决此问题。 回到Web标准,gen ed css:*是通用的,只要另一个声明不覆盖*的特殊性,它就会一直工作。 在英语中,如果在页面顶部声明*Margin:0;padding:0;border:none,则不必在每个元素上都添加Margin:0;padding:0。你已经有了。 网络标准,他们会拯救你的生命。 |
|
|
Aleph · 如何使这篇文章连贯一致?[副本] 1 年前 |
|
fghoussen · 在C结构体中,为什么打包、对齐似乎会进行填充? 1 年前 |
|
|
BENG · 协调C++和Objective-C中结构的填充 2 年前 |
|
|
JTA1618 · 如何按组将可变数量的空白行附加到数据帧? 2 年前 |
|
|
JTA1618 · 如何在python中填充嵌套列表? 2 年前 |
|
|
Kishore Suresh · C/C中字符数组的填充++ 3 年前 |
|
|
user7907740 · 如何使填充响应 8 年前 |