Css 是否存在作为典型内联块存在的HTML元素?
Css 是否存在作为典型内联块存在的HTML元素?,css,html,Css,Html,div是典型的块级元素,span是内联对应元素。它们是该显示类型最简单的可能形式,没有其他属性。在很多情况下,我会给他们中的任何一个提供以下风格: display: inline-block; 这使得他们的行为非常得心应手。对于div来说,这意味着盒子可以很容易地挨在一起,同时保持定义的宽度和高度。对于span我可以用它来制作彩色矩形。inline块显示在很多方面都很好,但是我从来没有见过一个元素在没有任何其他操作的情况下以inline块开始 图像(img)是,但它们显然不适合做与div相同的
div
是典型的块级元素,span
是内联对应元素。它们是该显示类型最简单的可能形式,没有其他属性。在很多情况下,我会给他们中的任何一个提供以下风格:
display: inline-block;
这使得他们的行为非常得心应手。对于div
来说,这意味着盒子可以很容易地挨在一起,同时保持定义的宽度和高度。对于span
我可以用它来制作彩色矩形。inline块
显示在很多方面都很好,但是我从来没有见过一个元素在没有任何其他操作的情况下以inline块开始
图像(img
)是,但它们显然不适合做与div
相同的事情,它们有那种风格,但它们实现了不同的目的
那么,是否有一个我不知道的元素是最基本的内联块
,或者这个元素被忽略了
如果没有,原因是什么?内联块的用法很多,因此似乎应该有一些元素采用这种基本形式。默认情况下,img标记是内联块:
编辑:您可以检查此问题:我能想到的仅有的具有串联外观的元素,但允许设置宽度和高度,它们是:
img
输入
textarea
选择
,然后
按钮
但是,这里唯一可以接收HTML内容的元素是按钮元素;这不是按钮的理想用途,因为它是用户可能/应该与之交互的元素;而不仅仅是一个容器元素
虽然这种元素可能有多种用途,但鉴于display
属性很容易更改,没有令人信服的理由让W3C或任何其他权威机构明确定义一个;特别是考虑到内联
和内联块
之间的唯一区别是能够分配尺寸和边距没有这样的元素,并且有一些很好的理由不这样做
内联块
在当代网页设计中有多种用途。但是,它不是的一部分,它只包括块和内联元素。相反,它源自NSCA Mosaic添加的
。(它使用并帮助击败了最初的“响应式设计”。我想我们才刚刚开始)
再往下看,inline block
仍然不是IE4或5或任何版本的Netscape的一部分。它不是早期HTML4时代的一部分。因此,我们不希望在该版本的标准中找到您的假设元素<代码>内联块
仅出现在CSS2中,随后出现。(查看各标准中的参考部分)
与块
不同,内联块
。这是由名字所暗示的,这是你期望在某些文本的中间看<代码> <代码>(AKA处理器对象锚定为“字符”)。但是,除了它的起源之外,依赖于空格的标记很快就会变得非常麻烦。我不希望W3CHTML5在新元素中包含这一点
指定它肯定会涉及关于“语义”、内容和表示分离等方面的争论(以及如何称呼它:)。如果默认呈现使空白变得重要,那么这不是该元素语义的一部分吗?考虑使用图像来表示单词或单词的单个字母(带有适当的ALT文本)。这说明了该元素周围是否存在空格在语义上是有意义的,就像存在whitespaceseparatingwords在语义上是有意义的一样。这对我来说似乎是个大问题
内联块
通常被推广为使用浮点
的现代替代方案。但两者都不是真正合适的。这就是为什么CSS3将标准化新的布局模式:并且,支持具有真实、干净标记的现代响应设计。没有虚拟标记(或虚拟生成的内容)。没有针对空格依赖性的黑客攻击。我提到了图像。它们不是“精髓”,因为它们没有任何内容,有专门的显示(图像),并且在语义上是不同的(图像)。这基本上就是我所想的。回答不错。我不知道flexbox的事。我很少读书,我想我恋爱了+前几天我做了一些。只要HTML源代码中的空白出现问题,就表明它不适合使用内联块。@MattCoughlin nice!这很好地补充了我的论点,我已经从我的答案中链接到它。@zeel,wups,看起来还有一个更新的:)。我刚刚为CSS3添加了一个链接。我想这很好,他们没有试图把所有的东西都塞进一种模式。@sourcejedi:好交易!我在似乎相关的地方添加了一个返回链接。顺便说一句,另一个CSS3布局选项是。