代码之家  ›  专栏  ›  技术社区  ›  dan_g

QTextBrowser显示带有多余空格的嵌套HTML列表

  •  0
  • dan_g  · 技术社区  · 6 年前

    简化示例:

    列表.html

    <ul>
        <li>Parent List A
            <ul>
                <li>A1</li>
                <li>A2</li>
            </ul>
        </li>
        <li>Parent List B
            <ul>
                <li>B1</li>
                <li>B2</li>
            </ul>
        </li>
    </ul>
    

    列表\u test.py :

    import sys
    from PySide2.QtWidgets import QApplication, QTextBrowser
    
    with open('./list.html') as f:
        html = f.read()
    
    app = QApplication()
    
    text_widget = QTextBrowser()
    text_widget.setHtml(html)
    text_widget.show()
    
    sys.exit(app.exec_())
    

    enter image description here

    更奇怪的是,它只是父列表的最后一项。所以,如果我添加一个父列表C:

    列表.html :

    <ul>
        <li>Parent List A
            <ul>
                <li>A1</li>
                <li>A2</li>
            </ul>
        </li>
        <li>Parent List B
            <ul>
                <li>B1</li>
                <li>B2</li>
            </ul>
        </li>
        <li>Parent List C
            <ul>
                <li>C1</li>
                <li>C2</li>
            </ul>
        </li>
    </ul>
    

    只有父列表C显示了这个额外的空白:

    enter image description here

    1 回复  |  直到 6 年前
        1
  •  2
  •   cmaureir    6 年前

    如果你关了门 <li> <ul> 显示器不再有问题。

    <ul>                                                              
        <li>Parent List A</li>    
            <ul>    
                <li>A1</li>    
                <li>A2</li>    
            </ul>    
        <li>Parent List B</li>                                        
            <ul>                                                      
                <li>B1</li>                                           
                <li>B2</li>                                           
            </ul>                                                     
    </ul> 
    

    <li> 打开并放置 < 在里面,所以如果这是有效的HTML。 如果你的HTML是标准的,我会重新打开Qt5的问题。