WebToEpub转换Angular官方文档
背景
使用WebToEpub转换angular官方文档的一些配置,备份用.
WebToEpub的一些配置
第一章链接
https://angular.cn/start
主要内容的css选择器
div.content
打开网页就能看到
文章标题的css选择器
h1
勉强能算吧
排除的内容
button.copy-button
代码框里的复制按钮a.header-link
每个小标题后都跟着一个url,若使用该url访问网站则可直接跳转到该标题处[translation-origin]
英语原文的部分aio-toc
网页的content中有不可见的目录结构,带有该标签的内容还会造成大量的空白
自定义输出CSS
1 | pre { |
说明:
代码块在网页上看起来大概是
1 | <code-example> |
code-example
,aio-code
等标签,电子书中是不识别的(epub本质上也是html),只知道是一块pre
,code
才支持,为了美观,添加了一些margin和border- 默认情况下代码块的第一句代码缩进会异常
- 比第二行多缩进大概30px
- 如果删除第一行中的第一个字符,后面的会补上位置
- 如果设置第一行中的第一个字符向左移动
(code>span:first-child{margin-left:-30px}
),
后面的会向左更多(看起来至少40px,原因不明),导致重影. - 最终发现并非是
code
中的span
如何放置出问题,而是pre
有问题,
于是在pre
中取消代码缩进,然后在code
中尝试恢复缩进.
white-space的一些说明
white-space: 如何处理空白,这里的空白多数是指 空格,tab,回车
就是爱换行系列
- break-spaces 不仅空白字符不动,还多加换行(行尾空格会变回车),比较奇葩
原封不动系列:
- pre: 过长不会折行(仿佛是粘贴了一行字符串到一个不限显示长度的编辑器中)
- pre-wrap: 过长会折行 (看起来像是普通代码编辑器的行为)
什么空白都不要系列
- normal: 过长会折行(代码会浓缩到没有缩进,没有空行,密密麻麻的一团)
- nowrap: 显示成一行
去掉了大部分空白但保留了回车系列:
- pre-line: 过长会折行(代码会失去所有缩进,但保留了空行,暂且能够分出结构)