在<html>标签中设置class属性是否必要?Kindle电子书验证相关问题
关于Kindle Previewer 3验证问题的解答
a) 删除class="calibre"属性是否安全?
完全安全。你采用的直接给<html>标签定义margin:0; padding:0;的写法,和原来通过.calibre类实现的效果完全一致,逻辑更直接。Kindle排版引擎支持直接对根标签设置基础样式,只要确保样式表中html选择器的规则正确,删除这个class后不会出现布局问题,还能解决验证不通过的问题。
b) 该属性原本是否有必要添加?
没必要。Calibre转换工具默认给不少元素加calibre类,是为了统一批量重置基础样式,但对<html>标签来说,直接用标签选择器定义样式是更标准、简洁的做法,完全不需要额外套class来实现相同的边距重置。这个冗余的class属于转换工具的过度设计,反而触发了Kindle Previewer的验证报错。
代码对比
原代码:
<html xmlns="http://www.w3.org/1999/xhtml" class="calibre">
对应样式:
.calibre { margin:0; padding:0;}
你偏好的写法:
<html xmlns="http://www.w3.org/1999/xhtml">
对应样式:
html { margin:0; padding:0;}
内容的提问来源于stack exchange,提问作者mattyniner
相关产品推荐
相关产品推荐

