如何在Python-Markdown中向表中添加属性
遵循此文档:
http://pythonhosted.org/Markdown/extensions/attr_list.html 这有效: ### This makes a title {: .with-some-class } 我需要向表添加类,但它不起作用: | Title | blabla ----------------- | foo | bar {: .with-some-class } 有任何想法吗? 解决方法
您发现attr_list和表扩展之间存在不兼容性. < TD>是一个块级元素,因此默认情况下,attr_list在下一行查找属性列表,而不是内联.我认为有一个很好的例子,单元格元素的异常(因为目前有标题元素),因为没有办法让多行单元格具有表格扩展名.
要确定要实现哪种解决方案,您必须权衡切换到新表格格式与切换到python-markdown开发版本的痛苦. 块级解决方案:使用grid_tables而不是表(推荐) 抓住the third-party Grid Tables extension,它支持多行单元格,并将属性列表放在它自己的行中,如下所示: +-------+----------+-------------------------------+ | Title | blabla | +=======+==========+===============================+ | foo | bar | | | {: class="foo bar" title="Some title!" } | +-------+------------------------------------------+ 输出: <table> <thead> <tr> <th colspan="2" rowspan="1"> <p>Title</p> </th> <th colspan="1" rowspan="1"> <p>blabla</p> </th> </tr> </thead> <tbody> <tr> <td colspan="1" rowspan="1"> <p>foo </p> </td> <td colspan="2" rowspan="1"> <p class="foo bar" title="Some title!">bar</p> </td> </tr> </tbody> </table> 内联解决方案:修改attr_list以与表兼容 attr_list可以通过在attr_list.py中添加以下行来支持单元格元素上的内联属性列表: if not m and elem.tag == 'td': m = re.search(self.BASE_RE,elem.text) 不幸的是,这两个扩展都是额外的一部分,内置于python-markdown中.它们依赖于内部模块,因此制作自己的扩展(与当前的pip包兼容)是不现实的.如果要立即实施此解决方案,可以安装my fork. 注意:you cannot leave any space between the cell content and attribute list(正如您在问题中所做的那样). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |