我觉得我看到了一种方法,使用CSS内容属性,在元素之前插入换行标记.显然这不起作用:
#restart:before { content: '<br/>'; }
Run Code Online (Sandbox Code Playgroud)
但是你怎么做的?
我正在编写一个Web服务,我希望将数据作为XHTML返回.因为它是数据,而不是标记,我想保持它非常干净 - 没有额外的<div>s或<span>s.但是,为了方便开发人员,我还希望在浏览器中使返回的数据合理可读.要做到这一点,我认为一个好的方法是使用CSS.
我特别想要做的是在某些地方插入换行符.我知道display:block,但它在我正在尝试处理的情况下并不真正起作用 - 带有<input>字段的表单.像这样的东西:
<form>
Thingy 1: <input class="a" type="text" name="one" />
Thingy 2: <input class="a" type="text" name="two" />
Thingy 3: <input class="b" type="checkbox" name="three" />
Thingy 4: <input class="b" type="checkbox" name="four" />
</form>
Run Code Online (Sandbox Code Playgroud)
我想要渲染,以便每个标签显示在与相应输入字段相同的行上.我试过这个:
input.a:after { content: "\a" }
Run Code Online (Sandbox Code Playgroud)
但这似乎没有做任何事情.
例如:
HTML:
The quick brown fox <span class="break">{BREAK}</span> jumps over the lazy dog.
Run Code Online (Sandbox Code Playgroud)
我希望这个显示:
快速棕色狐狸{BREAK}
跳过懒狗.
我看了看display房子,但display:inline;没有破坏任何地方,并display:block在两边都打破了.
我也查看了:after伪类,但.break:after{content:"\000A";}最终渲染为空格而不是换行符.