html - 使用 xslt 的表对齐

标签 html css

我在 xslt 文件中创建了一个表。请检查屏幕截图。在屏幕的第二个表中,您可以看到 ID 2 没有出现在同一行上。出于某种原因,只有 2 个 enter image description here下跌降落。我希望 ID 2 与 ID 1 出现在同一行。

我还在这里上传了我的 xslt 代码。有人可以告诉我解决方案吗?

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet  version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">

    <html>
      <head>
        <title>VPGate Media Mixer</title>

        <meta http-equiv="expires" content="0"/>
        <meta http-equiv="pragma" content="no-cache"/>
        <meta http-equiv="cache-control" content="no-cache, must-revalidate"/>
        <meta http-equiv="refresh" content="15"></meta>
        <script src="/Common/common.js\" type="text/javascript"></script>
        <link rel="stylesheet" type="text/css" href="style001.css" />
        <link rel="stylesheet" type="text/css" href="Grid.Default.css" />


      </head>

      <body class="WorkArea">
        <div class="divSummaryHeader" id="SummaryHeader">
          <h1>Media Mixer - VPGate</h1>

          <xsl:for-each select="MMDiagnostics/Conference">
            <h1>
              Media Mixer - <xsl:value-of select="name"/>
            </h1>
          </xsl:for-each>
        </div>

        &#160;



        <div class="RadGrid RadGrid_Default" id="SummaryData" style="position:absolute;width:790px;overflow:auto">

          <table border="0" class="rgMasterTable rgClipCells" cellspacing="0" cellpadding="0" >
            <tr>
              <input type="button" class="formEditBtn" id="SubBtn" value="Refresh" onclick="window.location=window.location;"/>

            </tr>
            <tr>
              <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;" colspan="2">Conference Summary</td>
            </tr>

            <tr>
              <td>
                <table border="0" class="rgMasterTable rgClipCells" cellspacing="0" cellpadding="0"  >
                  <tr>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Conference Name</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Conference ID</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Composite Address</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Composite Port</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Composite Ssrc</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">No Of Participants</td>
                  </tr>

                  <xsl:for-each select="MediaMixer/Conference">
                    <!--<xsl:sort select="Name"/>-->
                    <xsl:if test="(position() mod 2 = 0)">

                      <tr class="rgAltRow SummaryTableDataRow">
                        <td valign = "top">
                          <xsl:value-of select="Name"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="ConfId"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="CompositeAddress"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="CompositePort"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="CompositeSsrc"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="NoOfParticipants"/>
                        </td>
                      </tr>
                    </xsl:if>

                    <xsl:if test="(position() mod 2 = 1)">
                      <td>
                        <tr class="rgRow SummaryTableDataRow">
                          <td valign = "top">
                            <xsl:value-of select="Name"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="ConfId"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="CompositeAddress"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="CompositePort"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="CompositeSsrc"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="NoOfParticipants"/>
                          </td>
                        </tr>
                      </td>
                    </xsl:if>

                  </xsl:for-each>

                </table>
              </td>
            </tr>
          </table>

          &#160;

          <table border="0" class="rgMasterTable rgClipCells" cellspacing="1" cellpadding="1"  >
            <tr>
              <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;" colspan="2">Conference Details</td>
            </tr>

            <tr>
              <td>

                <table border="0" class="rgMasterTable rgClipCells" cellspacing="0" cellpadding="0" >
                  <tr>

                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">ID 1</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">ID 2</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Participant Address</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">Participant Listening Port</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">MM Listening Port</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">SSRC From Participant</td>
                    <td class="rgHeader SummaryTableHdrRow" style="font-weight:bold;">SSRC From MM</td>
                  </tr>

                  <xsl:for-each select="MediaMixer/Conference/Participant">

                    <xsl:if test="(position() mod 2 = 0)">

                      <tr class="rgAltRow SummaryTableDataRow">

                        <td valign = "top">
                          <xsl:value-of select="ID1"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="ID2"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="ParticipantAddress"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="ParticipantListeningPort"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="MMListeningPort"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="SSRCFromParticipant"/>
                        </td>
                        <td valign = "top">
                          <xsl:value-of select="SSRCFromMM"/>
                        </td>
                      </tr>
                    </xsl:if>

                    <xsl:if test="(position() mod 2 = 1)">
                      <td>
                        <tr class="rgRow SummaryTableDataRow">
                          <td valign = "top">
                            <xsl:value-of select="ID1"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="ID2"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="ParticipantAddress"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="ParticipantListeningPort"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="MMListeningPort"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="SSRCFromParticipant"/>
                          </td>
                          <td valign = "top">
                            <xsl:value-of select="SSRCFromMM"/>
                          </td>

                        </tr>
                      </td>
                    </xsl:if>
                  </xsl:for-each>

                </table>
              </td>
            </tr>
          </table>


          &#160;


          <div style="display:none">
            <iframe id="frameUpdate" name="frameUpdate" width="100%"></iframe>
          </div>


        </div>

      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

最佳答案

避免换行的正确方法是使用 CSS 样式 white-space

http://www.w3.org/TR/CSS2/text.html#propdef-white-space

例如

<td style="white-space: nowrap">ID 2</td>

当然,您也可以将white-space 样式移动到CSS 类中。我想您需要多花点功夫才能让它适合您的餐 table 。

关于html - 使用 xslt 的表对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7428541/

相关文章:

javascript - 将 div 元素中的文本与 Raphael SVG 元素一起制作动画

java - 如何从 ResultSet 中获取指定数量的行

php - 如何从 Playstation Store 获取价格

html - Bootstrap 绝对定位的导航栏不会位于相对定位的横幅图像之上

css - 虚线下划线无法在 Chrome 中正确呈现

html - 特定字体仅在 Firefox 中有不正确的下划线——错误在哪里,如何解决?

javascript - 为什么将鼠标悬停在图像上后 <li> 元素不会改变颜色和宽度?

html - 绝对根 url css

css - 当 $(this) 高度增加时,同级 float 到底部

html - 无法让提交框显示在文本框下方