Окружение указанного тега c HTML другим тегом HTML с использованием XSLT - PullRequest
0 голосов
/ 19 апреля 2020

Есть ли способ в XSLT, с помощью которого мы можем преобразовать файл HTML, чтобы окружить существующий тег HTML (в этом сценарии "img") другим тегом HTML (в этом сценарии "center") без снова переписать всю структуру HTML в XSLT?

Существующий код HTML:

<!DOCTYPE html>
<html>
    <body>
         <img id="image" width: 747px; height: 1056px" src="image.jpg"/>
         <p>My first paragraph.</p>
    </body>
</html>

После преобразования с использованием XSLT ожидаемый результат:

<!DOCTYPE html>
<html>
    <body>
         <center>
              <img id="image" width: 747px; height: 1056px" src="image.jpg"/>  
         </center>
     <p>My first paragraph.</p>
    </body>
</html>

I думал сделать это с помощью преобразования идентичности XSLT, но я не понимаю, как окружить только указанный тег c HTML (в данном случае "img") другим тегом HTML

<xsl:template match="@*|node()">
    <xsl:copy>
        <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
</xsl:template>

Примечание: Через XSLT я не хочу переписывать всю структуру ожидаемого HTML вывода снова (если возможно). Я просто хочу, чтобы тег <center> HTML был добавлен вокруг тега <img> HTML.

1 Ответ

0 голосов
/ 19 апреля 2020

Используйте инструкцию xsl:copy-of

<xsl:template match="img">
    <center>
        <xsl:copy-of select="."/>
    </center>
</xsl:template>
...