此Markdown代码:
# Introduction
使用Pandoc编译时转换为HTML代码:
<h1 id="introduction"><a href="#introduction">Introduction</a></h1>
我使用Markdown的方式:
在CSS中我可以覆盖链接颜色,如果它们在H#标签内,但是MS Word在解释CSS覆盖的层次结构时遇到问题......并且最终会以错误的颜色结束。
有没有办法生成HTML而没有标题包含在锚标记中,如下所示?
<h1 id="introduction">Introduction</h1>
答案 0 :(得分:0)
如果没有解决方案,这里有一个PHP脚本,我写的是从标题中删除必须在生成的HTML文件上运行的标记:
<?php
// Usage: php cleanheadings.php myhtmlfile.html
// Check that arguments were supplied
if(!isset($argv[1])) die('No input file, exiting');
// Load file
$content = file_get_contents($argv[1]);
// Cut out the <a> tag
$heading = '/(<h[123456] id="[\w-0-9]+">)(<a href="#[\w-0-9]+">)(.+)(<\/a>)(<\/h[123456])/mu';
$clean = '$1$3$5';
$cleanhtml = preg_replace($heading,$clean,$content);
// Write changes back to file
file_put_contents($argv[1], $cleanhtml);
?>