簡體   English   中英

Xsl / Xml問題結構生成html標記

[英]Xsl/Xml Issue structure generating html tags

我有問題通過xslt從xml文件生成html。 我使用tei生成的DTD和漫畫書的cbml自定義。

這是我的xml結構:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE TEI SYSTEM "cbml.dtd">
<?xml-stylesheet type="text/xsl" href="sorgente.xsl"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
    <teiHeader>
        <fileDesc>
            <titleStmt>
                <title>Vi for Vendetta versione digitalizzata</title>
                    <respStmt>
                        <resp>codifica</resp>
                        <persName>Giulio Bambini</persName>
                    </respStmt>
                <respStmt>
                    <resp>traduzione</resp>
                    <persName>Stefano Negrini</persName>
                </respStmt>
                <respStmt>
                    <resp>lettering</resp>
                    <persName>Maurizio Pieri</persName>
                </respStmt>
            </titleStmt>    
            <publicationStmt> 
                <publisher>Università di Pisa</publisher>
                <pubPlace>Pisa, Italia</pubPlace>
                <date>2015</date>
                <availability>
                    <p>Licenza gratuita</p>
                </availability>
            </publicationStmt>
            <sourceDesc>
                <bibl>
                    <title>Vi for Vendetta</title>
                    <author>
                        <persName>Alan Oswald Moore</persName> e
                        <persName>David Lloyd</persName>
                    </author>
                    <publisher>DC Comics </publisher>
                    <pubPlace>Londra, Gran Bretagna</pubPlace>
                    <date>1982</date>
                </bibl>
            </sourceDesc>
        </fileDesc>
        <encodingDesc>
            <projectDesc>
            <p>
                La seguente codifica con l'ausilio di Image Markup Tool ci permette di identificare il testo annotato sulle
                immagini della Graphic Novel. All&apos; interno del nostro elaborato i dialoghi sono stati evidenziati in corsivo e 
                sono stati inoltre raggruppati i nomi dei personaggi, delle organizzazioni e dei luoghi evidenziati nel testo.
            </p>
            </projectDesc>
        </encodingDesc>   
    </teiHeader>
     <facsimile>
        <surface
            xml:id="img-1"
            ulx="0"
            uly="0"
            lrx="355"
            lry="678">
            <graphic url="tavole/1.jpg"/>
            <zone
                ulx="83"
                uly="223"
                lrx="272"
                lry="256"
                xml:id="line1"/>
            <zone
                ulx="92"
                uly="251"
                lrx="256"
                lry="282"
                xml:id="line2"/>
            <zone
                ulx="21"
                uly="281"
                lrx="330"
                lry="308"
                xml:id="line3"/>
            <zone
                ulx="36"
                uly="306"
                lrx="320"
                lry="332"
                xml:id="line4"/>
            <zone
                ulx="85"
                uly="535"
                lrx="249"
                lry="556"
                xml:id="line5"/>
            <zone
                ulx="97"
                uly="556"
                lrx="241"
                lry="576"
                xml:id="line6"/>
            <zone
                ulx="58"
                uly="577"
                lrx="281"
                lry="595"
                xml:id="line7"/>
            <zone
                ulx="68"
                uly="595"
                lrx="271"
                lry="613"
                xml:id="line8"/>
        </surface>
    </facsimile>
    <facsimile>
        <surface
            xml:id="img-2"
            ulx="0"
            uly="0"
            lrx="355"
            lry="678">
            <graphic url="tavole/2.jpg"/>
            <zone
                ulx="83"
                uly="223"
                lrx="272"
                lry="256"
                xml:id="line9"/>
            <zone
                ulx="92"
                uly="251"
                lrx="256"
                lry="282"
                xml:id="line10"/>
            <zone
                ulx="21"
                uly="281"
                lrx="330"
                lry="308"
                xml:id="line11"/>
            <zone
                ulx="36"
                uly="306"
                lrx="320"
                lry="332"
                xml:id="line12"/>
            <zone
                ulx="85"
                uly="535"
                lrx="249"
                lry="556"
                xml:id="line13"/>
            <zone
                ulx="97"
                uly="556"
                lrx="241"
                lry="576"
                xml:id="line14"/>
            <zone
                ulx="58"
                uly="577"
                lrx="281"
                lry="595"
                xml:id="line15"/>
            <zone
                ulx="68"
                uly="595"
                lrx="271"
                lry="613"
                xml:id="line16"/>
        </surface>
    </facsimile>

     <text>

        <body>

               <div type="panelGrp" facs="img-1" xml:id="myElement-1">
                <panel n="1" characters="#EmittenteRadioDelFato">
                    <balloon facs="line1" who="#EmittenteRadioDelFato" type="speech"><p>Buonasera Londra. Sono le nove, e questa è la<emph rendition="#b">voce del fato</emph> che trasmette sui 275 e 285 
                        in onde medie... è il 5 novembre 1997.</p>
                    </balloon>
                </panel>
                <panel n="2" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line2" type="speech" who="#EmittenteRadioDelFato"><p>Il tempo si manterrà bella fino alle 24:07, quando comincerà un <emph rendition="#b">acquazzone</emph> che durarà fino alle 01:30.</p>
                    </balloon>
                </panel>
                <panel n="3" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line3" type="speech" who="#EmittenteRadioDelFato"><p>Per tutta la notte la temperatura resterà tra i 13 e i 14 gradi centigradi.</p>
                    </balloon>
                </panel>
                <panel n="4" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line4" type="speech" who="#EmittenteRadioDelFato"><p>Si avverte la popolazione di Londra che da oggi le zone di Streatham e Brixton sono in <emph rendition="#b">quarantena</emph>.Si consiglia di evitare queste zone per motivi igienici e di sicurezza.</p>
                    </balloon>
                </panel>
                <panel n="5" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line5" type="speech" who="#EmittenteRadioDelFato"><p>I dati di produttività dell'hereforshire lasciano sperare che nel febbraio del 1998 si possa porre fine al<emph rendition="#b">razionamento</emph> della carne.</p>
                    </balloon>
                </panel>    
                <panel n="6" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line6" type="speech" who="#EmittenteRadioDelFato"><p>Analoghe speranze anche per le <emph rendition="#b">uova</emph> e le <emph rendition="#b">patate</emph> grazie al'aumento della produzione.</p>
                    </balloon>
                </panel>    
                <panel n="7" characters="#EmittenteRadioDelFato">    
                    <balloon facs="#line7" type="speech" who="#EmittenteRadioDelFato"><p>Di primo mattino la polizia ha fatto irruzione in diciassette case della zona di Birmingham sgominando una pericolosa <emph rendition="#b">rete terroristica</emph>.</p>
                    </balloon>
                    <balloon facs="#line8" type="speech" who="#EmittenteRadioDelFato"><p>Venti persone, tra cui otto donne, sono attualmente detenute in attesa di giudizio.</p>
                    </balloon>          
                 </panel>
                <fw type="pageNum" place="lower-left">1</fw>
            </div>


            <div type="panelGrp" facs="img-2" xml:id="myElement-1">
                <panel n="1" characters="#EmittenteRadioDelFato">
                    <balloon facs="line9" who="#EmittenteRadioDelFato" type="speech"><p>Buonasera Londra. Sono le nove, e questa è la<emph rendition="#b">voce del fato</emph> che trasmette sui 275 e 285 
                        in onde medie... è il 5 novembre 1997.</p>
                    </balloon>
                </panel>
                <panel n="2" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line10" type="speech" who="#EmittenteRadioDelFato"><p>Il tempo si manterrà bella fino alle 24:07, quando comincerà un <emph rendition="#b">acquazzone</emph> che durarà fino alle 01:30.</p>
                    </balloon>
                </panel>
                <panel n="3" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line11" type="speech" who="#EmittenteRadioDelFato"><p>Per tutta la notte la temperatura resterà tra i 13 e i 14 gradi centigradi.</p>
                    </balloon>
                </panel>
                <panel n="4" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line12" type="speech" who="#EmittenteRadioDelFato"><p>Si avverte la popolazione di Londra che da oggi le zone di Streatham e Brixton sono in <emph rendition="#b">quarantena</emph>.Si consiglia di evitare queste zone per motivi igienici e di sicurezza.</p>
                    </balloon>
                </panel>
                <panel n="5" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line13" type="speech" who="#EmittenteRadioDelFato"><p>I dati di produttività dell'hereforshire lasciano sperare che nel febbraio del 1998 si possa porre fine al<emph rendition="#b">razionamento</emph> della carne.</p>
                    </balloon>
                </panel>    
                <panel n="6" characters="#EmittenteRadioDelFato">
                    <balloon facs="#line14" type="speech" who="#EmittenteRadioDelFato"><p>Analoghe speranze anche per le <emph rendition="#b">uova</emph> e le <emph rendition="#b">patate</emph> grazie al'aumento della produzione.</p>
                    </balloon>
                </panel>    
                <panel n="7" characters="#EmittenteRadioDelFato">    
                    <balloon facs="#line15" type="speech" who="#EmittenteRadioDelFato"><p>Di primo mattino la polizia ha fatto irruzione in diciassette case della zona di Birmingham sgominando una pericolosa <emph rendition="#b">rete terroristica</emph>.</p>
                    </balloon>
                    <balloon facs="#line16" type="speech" who="#EmittenteRadioDelFato"><p>Venti persone, tra cui otto donne, sono attualmente detenute in attesa di giudizio.</p>
                    </balloon>          
                 </panel>
                <fw type="pageNum" place="lower-left">1</fw>
            </div>



        </body>
    </text>
</TEI>

這是我生成html的xsl文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
    xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns:cbml="http://www.cbml.org/ns/1.0">
    <xsl:output method="html" version="4.0" indent="no"/>   
    <xsl:template match="/">
        <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text>
        <html>
            <head>
                <title>
                    <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:title"/>  
                </title>
                <meta http-equiv="content-type" content="text/html; charset=utf-8" />
                <link type="text/css" rel="stylesheet" href="stile.css" />
            </head>

            <body>
                <div>
                    <xsl:attribute name="class">inner-container</xsl:attribute>
                    <div>
                        <xsl:attribute name="id">corpo</xsl:attribute> 
                <xsl:apply-templates></xsl:apply-templates>

                    </div></div>  
            </body>
        </html>

    </xsl:template>

    <xsl:template match="tei:teiHeader">

        <div>
            <xsl:attribute name="id">header</xsl:attribute>
            <h1>
                <xsl:attribute name="id">titolo</xsl:attribute>
                <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:title"/>
            </h1>
            <h3>
                <xsl:attribute name="id">resp-name</xsl:attribute>
                <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:respStmt/tei:resp"/>
                <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:respStmt/tei:name"/>
            </h3>
        </div>
        <xsl:element name="div">
            <xsl:attribute name="id">contenitore-tei-header</xsl:attribute>    
        <xsl:element name="div">
            <xsl:attribute name="id">informazioni-codifica</xsl:attribute>    
            <h3 class="titolo-liste">Informazioni sulla codifica</h3>
            <h5>
                Titolo: 
                <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:title"/>
            </h5>
            <h5>
                Codifica curata da: 
                <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:respStmt/tei:persName"/>
            </h5>
            <h5>
                Publisher: 
                <xsl:value-of select="tei:fileDesc/tei:publicationStmt/tei:publisher"/>
            </h5>
            <h5>
                Città:
                <xsl:value-of select="tei:fileDesc/tei:publicationStmt/tei:pubPlace"/>
            </h5> 
            <h5>
                Data: 
                <xsl:value-of select="tei:fileDesc/tei:publicationStmt/tei:date"/>
            </h5>
       </xsl:element>    
       <xsl:element name="div">
            <xsl:attribute name="id">informazioni-fumetto</xsl:attribute>      
            <h3 class="titolo-liste">Informazioni sul fumetto</h3>
            <h5>
                Titolo originale: 
                <xsl:value-of select="tei:fileDesc/tei:sourceDesc/tei:bibl/tei:title"/>
            </h5>
            <h5>
                Autori: 
                <a href="item.php?id={ItemId}">
                <xsl:value-of select="tei:fileDesc/tei:sourceDesc/tei:bibl/tei:author/tei:persName"/>
                </a>    
            </h5>   
            <h5>
                Casa editrice: 
                <xsl:value-of select="tei:fileDesc/tei:sourceDesc/tei:bibl/tei:publisher"/>
            </h5>
            <h5>
                Città:
                <xsl:value-of select="tei:fileDesc/tei:sourceDesc/tei:bibl/tei:pubPlace"/>
            </h5> 
            <h5>
                Data pubblicazione: 
                <xsl:value-of select="tei:fileDesc/tei:sourceDesc/tei:bibl/tei:date"/>
            </h5>
       </xsl:element>     
        <xsl:element name="div">
               <xsl:attribute name="id">introduzione</xsl:attribute>    
               <h3 class="titolo-liste">Introduzione</h3>  
            <xsl:value-of select="tei:encodingDesc/tei:projectDesc"/>
        </xsl:element> 
        </xsl:element>
    </xsl:template>
    <xsl:template match="tei:facsimile/tei:surface">
        <xsl:element name="div">
            <xsl:attribute name="id">contenitore-immagine</xsl:attribute>    
            <xsl:element name="img">
                <xsl:attribute name="class">dimensioni</xsl:attribute>
                <xsl:attribute name="src">
                    <xsl:value-of select="tei:graphic/@url" />
                </xsl:attribute>
            </xsl:element>
        </xsl:element>
    </xsl:template>

    <xsl:template match="tei:text">

        <xsl:apply-templates></xsl:apply-templates>
    </xsl:template>




    <xsl:template match="tei:body/tei:div[@type='panelGrp']">
        <xsl:element name="div">
            <xsl:attribute name="id">contenitore-testo-annotato</xsl:attribute>
            <xsl:element name="ul">
                <xsl:attribute name="class">ul-testo-annotato</xsl:attribute>
                <xsl:for-each select="cbml:panel">
                    <xsl:element name="li">
                        <xsl:attribute name="class">li-testo-annotato</xsl:attribute>
                        <xsl:element name="p">
                        <xsl:attribute name="class">p-testo-annotato</xsl:attribute>
                            <xsl:value-of select="cbml:balloon"/>
                    </xsl:element>
                    </xsl:element>
                </xsl:for-each>
            </xsl:element>
        </xsl:element>
    </xsl:template>



</xsl:stylesheet>

這是生成的html:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns:cbml="http://www.cbml.org/ns/1.0"><head><title></title><meta http-equiv="content-type" content="text/html; charset=utf-8" /><link type="text/css" rel="stylesheet" href="stile.css" /></head><body><div class="inner-container"><div id="corpo">
    <div id="header"><h1 id="titolo">Vi for Vendetta versione digitalizzata</h1><h3 id="resp-name">codifica</h3></div><div id="contenitore-tei-header"><div id="informazioni-codifica"><h3 class="titolo-liste">Informazioni sulla codifica</h3><h5>
                    Titolo: 
                    Vi for Vendetta versione digitalizzata</h5><h5>
                    Codifica curata da: 
                    Giulio Bambini</h5><h5>
                    Publisher: 
                    Università di Pisa</h5><h5>
                    Città:
                    Pisa, Italia</h5><h5>
                    Data: 
                    2015</h5></div><div id="informazioni-fumetto"><h3 class="titolo-liste">Informazioni sul fumetto</h3><h5>
                    Titolo originale: 
                    Vi for Vendetta</h5><h5>
                    Autori: 
                    <a href="item.php?id=">Alan Oswald Moore</a></h5><h5>
                    Casa editrice: 
                    DC Comics </h5><h5>
                    Città:
                    Londra, Gran Bretagna</h5><h5>
                    Data pubblicazione: 
                    1982</h5></div><div id="introduzione"><h3 class="titolo-liste">Introduzione</h3>

                La seguente codifica con l'ausilio di Image Markup Tool ci permette di identificare il testo annotato sulle
                immagini della Graphic Novel. All' interno del nostro elaborato i dialoghi sono stati evidenziati in corsivo e 
                sono stati inoltre raggruppati i nomi dei personaggi, delle organizzazioni e dei luoghi evidenziati nel testo.

            </div></div>

        <div id="contenitore-immagine"><img class="dimensioni" src="tavole/1.jpg" /></div>


        <div id="contenitore-immagine"><img class="dimensioni" src="tavole/2.jpg" /></div>






               <div id="contenitore-testo-annotato"><ul class="ul-testo-annotato"></ul></div>


            <div id="contenitore-testo-annotato"><ul class="ul-testo-annotato"></ul></div>





</div></div></body></html>

我的問題是,我想生成這個帶有altenated html標簽的html結構(類似的東西......):

<div id="contenitore-immagine">
<div id="contenitore-testo-annotato">
<div id="contenitore-immagine">
<div id="contenitore-testo-annotato">

但是對於我當前的xsl,它帶有這個錯誤的結構(它將所有元素匹配在一起而沒有交替):

<div id="contenitore-immagine">
<div id="contenitore-immagine">
<div id="contenitore-testo-annotato">
<div id="contenitore-testo-annotato">

如何生成交替的html標簽? 如何為連接到相對圖像的選定文本片段執行操作?

以下是我將如何解決這個問題:

tei:text定義一個空模板,以便處理不會自動流入它:

<xsl:template match="tei:text" />

使用源文檔中的所有面板創建變量,以便您可以簡明有效地訪問它們:

<xsl:variable name="pannelli" select="/*/tei:text/tei:body/tei:div[@type='panelGrp']" />

處理傳真表面時,確定文檔中該表面的序號,並使用該序列將模板應用於關聯的面板:

<xsl:template match="tei:facsimile/tei:surface">
  <xsl:variable name="pos">
    <xsl:number count="tei:facsimile/tei:surface" level="any"/>
  </xsl:variable>

  <div id="contenitore-immagine">
    <img class="dimensioni" src="{tei:graphic/@url}"/>
  </div>

  <xsl:apply-templates select="$pannelli[number($pos)]" />
</xsl:template>

(與原始問題無關)對panelGrp模板進行一些改進和更正:

<xsl:template match="tei:body/tei:div[@type='panelGrp']">
  <div id="contenitore-testo-annotato">
    <ul class="ul-testo-annotato">
      <xsl:apply-templates select="tei:panel" />
    </ul>
  </div>
</xsl:template>

<xsl:template match="tei:div[@type='panelGrp']/tei:panel">
  <li class="li-testo-annotato">
    <p class="p-testo-annotato">
      <xsl:value-of select="tei:balloon"/>
    </p>
  </li>
</xsl:template>

完整解決方案

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
    xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns:cbml="http://www.cbml.org/ns/1.0"
    exclude-result-prefixes="tei cbml">
  <xsl:output method="html" version="4.0" indent="no"/>
  <xsl:template match="/">
    <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text>
    <html>
      <head>
        <title>
          <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:title"/>
        </title>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <link type="text/css" rel="stylesheet" href="stile.css" />
      </head>

      <body>
        <div class="inner-container">
          <div id="corpo">
            <xsl:apply-templates/>
          </div>
        </div>
      </body>
    </html>

  </xsl:template>

  <xsl:template match="tei:teiHeader">

    <div id="header">
      <h1 id="titolo">
        <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:title"/>
      </h1>
      <h3 id="resp-name">
        <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:respStmt/tei:resp"/>
        <xsl:value-of select="tei:fileDesc/tei:titleStmt/tei:respStmt/tei:name"/>
      </h3>
    </div>
    <div id="contenitore-tei-header">
      <div id="informazioni-codifica">
        <h3 class="titolo-liste">Informazioni sulla codifica</h3>
        <h5>
          <xsl:value-of select="concat('Titolo: ', tei:fileDesc/tei:titleStmt/tei:title)"/>
        </h5>
        <h5>
          <xsl:value-of select="concat('Codifica curata da: ', tei:fileDesc/tei:titleStmt/tei:respStmt/tei:persName)"/>
        </h5>
        <h5>
          <xsl:value-of select="concat('Publisher:', tei:fileDesc/tei:publicationStmt/tei:publisher)"/>
        </h5>
        <h5>
          <xsl:value-of select="concat('Città:', tei:fileDesc/tei:publicationStmt/tei:pubPlace)"/>
        </h5>
        <h5>
          <xsl:value-of select="concat('Data: ', tei:fileDesc/tei:publicationStmt/tei:date)"/>
        </h5>
      </div>
      <div id="informazioni-fumetto">
        <h3 class="titolo-liste">Informazioni sul fumetto</h3>
        <h5>
          <xsl:value-of select="concat('Titolo originale: ', tei:fileDesc/tei:sourceDesc/tei:bibl/tei:title)"/>
        </h5>
        <h5>
          <xsl:text>Autori: </xsl:text>
          <a href="item.php?id={ItemId}">
            <xsl:value-of select="tei:fileDesc/tei:sourceDesc/tei:bibl/tei:author/tei:persName"/>
          </a>
        </h5>
        <h5>
          <xsl:value-of select="concat('Casa editrice: ', tei:fileDesc/tei:sourceDesc/tei:bibl/tei:publisher)"/>
        </h5>
        <h5>
          <xsl:value-of select="concat('Città: ', tei:fileDesc/tei:sourceDesc/tei:bibl/tei:pubPlace)"/>
        </h5>
        <h5>
          <xsl:value-of select="concat('Data pubblicazione: ', tei:fileDesc/tei:sourceDesc/tei:bibl/tei:date)"/>
        </h5>
      </div>
      <div id="introduzione">
        <h3 class="titolo-liste">Introduzione</h3>
        <xsl:value-of select="tei:encodingDesc/tei:projectDesc"/>
      </div>
    </div>
  </xsl:template>

  <xsl:template match="tei:text" />

  <xsl:variable name="pannelli" select="/*/tei:text/tei:body/tei:div[@type='panelGrp']" />

  <xsl:template match="tei:facsimile/tei:surface">
    <xsl:variable name="pos">
      <xsl:number count="tei:facsimile/tei:surface" level="any"/>
    </xsl:variable>

    <div id="contenitore-immagine">
      <img class="dimensioni" src="{tei:graphic/@url}"/>
    </div>

    <xsl:apply-templates select="$pannelli[number($pos)]" />
  </xsl:template>

  <xsl:template match="tei:body/tei:div[@type='panelGrp']">
    <div id="contenitore-testo-annotato">
      <ul class="ul-testo-annotato">
        <xsl:apply-templates select="tei:panel" />
      </ul>
    </div>
  </xsl:template>

  <xsl:template match="tei:div[@type='panelGrp']/tei:panel">
    <li class="li-testo-annotato">
      <p class="p-testo-annotato">
        <xsl:value-of select="tei:balloon"/>
      </p>
    </li>
  </xsl:template>

</xsl:stylesheet>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM