Html CSS跨元素内的多个空格

Html CSS跨元素内的多个空格,html,css,jsp,jstl,whitespace,Html,Css,Jsp,Jstl,Whitespace,我有一个页面,试图在浏览器上显示全名(firstName lastName) 在我的JSP中,我有 <span> <c:if test="${someCondition1}"> <c:out value="${firstName}"> </c:if> <c:if test="${someCondition2}"> <c:out value="${lastName}">

我有一个页面,试图在浏览器上显示全名(firstName lastName)

在我的JSP中,我有

<span>
    <c:if test="${someCondition1}">
        <c:out value="${firstName}">
    </c:if>
    <c:if test="${someCondition2}">
        <c:out value="${lastName}">
    </c:if>
</span>

因此,在span元素上使用CSS空白折叠多个空格是错误的。

您可以用

firstName = firstName.replace(" ", "&nbsp;");
有了它,你就不再需要CSS
空白了。

Firefox应该折叠空白,但如果不尝试
空白折叠:折叠。这是一个CSS3属性,它显式地给出了您想要的行为

等等,我很困惑。在哪种情况下,在名称的各个部分之间使用超过1个空格是合理的?我不知道有哪种人类语言是可以接受的。这是某种外来语言吗?

试试这个

<span><c:out value="${someCondition1?firstName:''} ${someCondition2?lastName:''}"/></span>


把所有东西都排成一行。

mh。。。你想要这些空格还是要删除它们?我想要删除代码空格(即c:out之外的空格)并保留fname/lname中的空格(即c:out返回的空格)。问题是,在Firefox中,代码空格不会折叠,而IE会折叠它们。对于目前为止给出的代码,情况并非如此。您是指在浏览器的视口中看到的渲染输出,还是指在浏览器的“查看源”工具中看到的生成的HTML源?如果是前者,请发布SSCCE。如果是后者,那么是工具本身为您折叠了它。我指的是页面生成源中的空格(而不是呈现的浏览器输出),我希望删除代码空格(即c:out之外的空格),保留fname/lname中的空格(即c:out返回的内容)……是的,尽管听起来很奇怪,我可以在名称中包含空格…如果您想添加空格,这会有所帮助,但您没有。我在写这篇文章的时候不知道。Thx的意思是…实际上,把整个代码放在一行就可以了…但是我想更一般地解决这个问题,不同的开发人员可以使用不同的代码缩进,应该仍然可以很好地工作。。。
<span><c:out value="${someCondition1?firstName:''} ${someCondition2?lastName:''}"/></span>