如何修正Calibre生成EPUB中CSS的link与vlink属性放置不当错误?
解决Calibre生成EPUB中body标签link/vlink属性的报错问题
问题原因
Calibre自动生成的HTML文件里,body标签使用了link和vlink这两个HTML5已废弃的属性,而Pagina EPUB Checker严格遵循EPUB规范(基于HTML5标准),因此会抛出属性不被允许的错误,尽管链接功能不受影响。
修复步骤
第一步:删除废弃属性
遍历所有35个xxx_split_xxx.htm文件,找到body标签中的link="blue"和vlink="purple"属性并删除,修改后的body标签示例:<body lang="EN-US" class="calibre">第二步:用CSS替代样式
在EPUB的全局CSS文件(通常是calibre.css)中添加以下规则,通过CSS伪类实现原属性的样式效果:/* 设置未访问链接颜色 */ a:link { color: blue; } /* 设置已访问链接颜色 */ a:visited { color: purple; }如果每个HTML文件有独立的内联样式,也可以将上述规则添加到文件内的
<style>标签中,但全局CSS统一管理更便于维护。
验证
修改完成后重新用Pagina EPUB Checker检测,这些报错应该会全部消失,同时链接的颜色显示和访问状态功能保持正常。
内容的提问来源于stack exchange,提问作者trosoft
相关产品推荐
相关产品推荐

