如何将表与HTML对齐?

时间:2013-10-23 19:43:00

标签: html css

首先,我是这些东西的新手(比如刚刚开始的两天前的新手)。我已经想出如何从我的XSL文件中的XML文件生成表。我现在要做的是让它们正确对齐。现在,我使用了<的align属性。表>要做到这一点,它完全按照我想要的方式工作,但我读到在HTML 4.01中不推荐使用align属性。我读到你在使用HTML时应该使用CSS。

我目前的印象是在处理XML文件时应该使用XSLT而不是CSS。因此,如果我不应该使用align属性,理由是它应该在CSS中完成,但我不应该使用CSS和XML,我该怎么办?

使用<的&属性是否仍然是一个好习惯?表>在XSLT中?

我正在尝试编写一个使用XML来序列化文件的Java程序。我知道Java有一个内置的Serializable接口,但无论如何我想这样做。最初,我正在创建自己的语法来做到这一点,但经过一些研究,我意识到我只是在重新发明XML。这个XSLT项目是一种转移,但我认为它可能是一个方便的东西,因为它可以以更易读的方式显示XML文件。

我的HTML体验很少,基本上没有CSS体验。到目前为止,我从来没有使用任何东西。我之前也没有向这个网站发帖提问。

1 个答案:

答案 0 :(得分:1)

tl; dr:是的,使用表align属性是一种不好的做法。你应该使用CSS。

我会:

  • 使用XSLT将XML转换为HTML
  • 使用CSS设置HTML文档的样式。

为此,请在XSLT表中包含以下内容:

<xsl:template match="/">
  <html>
    <head>
      <link rel="stylesheet" href="style.css" />
 // ...

然后,将CSS放入style.css以对齐表格。

要控制表格对齐,您可以使用此CSS,例如:

table {
  float: right;
}

以下是内联CSS样式表的示例:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
    <html>
      <head>
        <style type="text/javascript">
          <xsl:text>
            table {
              float: right;
            }
          </xsl:text>
        </style>
      </head>
      <body>
        <table>
          <xsl:for-each select="/records/record">
            <tr>
              <td><xsl:value-of select="name"/></td>
              <td><xsl:value-of select="age"/></td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

它可以应用于此示例文档:

<records>
  <record>
    <name>Lorem</name>
    <age>32</age>
  </record>
  <record>
    <name>Ipsum</name>
    <age>65</age>
  </record>
</records>