如何在<span>中显示<div>元素?

Har*_*rup 16 html

我的容器元素是a <span>,我想在其中显示一个<div>元素.如何<div><span>没有制作的情况下添加内部<div> display: inline;

<span>
    <div>Content goes here</div>
</span>
Run Code Online (Sandbox Code Playgroud)

Han*_*ijk 26

将跨度更改为显示块?但它完全没有意义,如果你需要一个块,然后用div替换span.您的文档也不会以这种方式验证,并且不同浏览器中的行为有点不可预测......

  • 不是那么有用,也不是那么准确.边界自鸣得意,自大或粗鲁,绝对没用.意图是有道理的.显然他想知道如何在一条线上获得多个div.这个机制是他要求帮助的,你的答案根本没有解决意图,所以这是浪费时间.有一个非常好的答案,你没有提供,另一个更周到和体贴的答案,下面. (4认同)
  • @nerdistcolony我不同意.关于SO的*最佳*答案是在问题表明OP误解规范时提供指导和纠正.HTML设计的最基本的核心原则之一是内联元素不包含块元素,并且您可以根据语义选择元素供其使用.因此,虽然Han没有通过提供使OP的标记结构起作用的方法来回答这个问题,但是他通过告诉OP如何正确地做*来做正确的事情*这是更重要的. (3认同)
  • 如果您阅读我的答案,您会看到它指出:更改跨度以显示块 (2认同)
  • @clearlight `inline-block` 肯定在 2011 年可用 :) (2认同)

mpo*_*pop 17

当我第一次认为我需要这个时,我最终做的就是将跨度改为div.但不是将div保留为显示:block(默认)我指定了要显示的样式:inline-block,这允许块所以可以使用内部div,但仍允许我放置多个div之一在同一条线上.

<div style="display:inline-block">
  <div>context on top</div>
  <div>context on bottom</div>
</div>
<div style="display:inline-block">
  <div>context on top</div>
  <div>context on bottom</div>
</div>
Run Code Online (Sandbox Code Playgroud)

这应该将2个块彼此相邻(不使用浮动),并且每个块的内部应该有2个块,一个在彼此的顶部.您还可以指定样式的宽度,使其看起来像您想要的样子.