【问题标题】:Inserting Multiple spaces in jsp在jsp中插入多个空格
【发布时间】:2012-08-14 08:01:55
【问题描述】:

我试图在 jsp 中的两个单词之间插入多个空格。

有没有办法在不多次使用   的情况下插入空格?

请帮助。谢谢。

【问题讨论】:

  • 你能给你的代码sn-p吗?

标签: java html jsp jakarta-ee


【解决方案1】:

简而言之,没有。

HTML 定义多个空格的序列与单个空格具有相同的意义。还有不间断的空格,由字符实体  表示。请注意,使用空格并不是实现布局和对齐的好方法(如果这是您的实际目标)。

http://www.w3.org/TR/html401/struct/text.html

对于除 PRE 之外的所有 HTML 元素,sequences 空格分隔“单词”

(强调我的)

【讨论】:

  • 感谢您的回答。那么这将如何实现。我试图在同一行中的 Help 和 Logout 2 超链接之间获得多个空格,但 Logout 选项必须位于右端。您能否提出其他建议来实现这一目标?
  • 使用 CSS 定义这两个元素的内边距(和/或外边距)和位置。
【解决方案2】:

将其括在<pre> 标记中。 示例:

out.println("<pre>This text has   multiple      spaces </pre>");

您可以在需要不寻常的格式时使用它。查看链接here了解更多关于标签的细节

【讨论】:

  • out.println 在 jsp 中 ???虽然 jsp 在内部转换为使用 out.println 的 servlet,但问题是寻求关于 jsp 的答案。
【解决方案3】:

通常认为在 HTML 中粘贴大量 nbsp 并不明智,因为间距是格式问题,而不是 HTML 或数据本身的语义组件。

相反,我通常尝试使用 CSS 来格式化:

.spacey { word-spacing: 20px; }

<p class="spacey">This is some text with 20 pixels between each word.</p>

【讨论】:

    【解决方案4】:

    在您选择的 JSP 中,在底部执行以下操作

    <%!
    public String getSpaces(int numSpaces)
    {
      StringBuffer buffer = new StringBuffer(numSpaces);
      for(int i = 0; i < numSpaces; i++)
        buffer.append(" ");
      return buffer.toString();
    }
    %>
    

    那么你想要空间的地方

    This will have lot of spaces <%= getSpaces(10)%> here
    

    【讨论】:

    • 感谢您的回复。我用的是Struts2框架。我已经实现了Action类。我应该在action类中实现功能吗?
    • 当我尝试实现该函数时,我得到 org.apache.jasper.JasperException: /jsp/create_corpus.jsp(5,1) 页面指令:多次出现具有不同值的语言是非法的(旧:java,新:Java)错误。
    • StringBuilder 缓冲区 = 新缓冲区(numSpaces);这怎么可能?我试过了,不行。。
    猜你喜欢
    • 2011-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多