如何使用DITA-OT 3.0.4覆盖html5转换中的默认css?

时间:2018-05-15 08:24:19

标签: html css dita dita-ot

我正在使用DITA-OT 3.0.4。

我尝试使用以下命令将我的降价文件转换为html5。

dita --input="note.ditamap" --output="out" --format=html5 --args.css=style.css --args.cssroot=metadata --args.copycss=yes --args.csspath=css

我有这些目录结构。

├── note.ditamap
├── metadata
│   ├── note.properties
│   └── style.css(this is my custom CSS)

由于上述命令,转换成功,但输出html(即index.html)不包含自定义CSS。

我也试过这些命令和属性,但结果和以前一样。

dita --input="note.ditamap" --output="out" --format=html5 --propertyfile="metadata/note.properties"

以下是note.properties内容。

args.csspath = css
args.copycss = YES
args.css = style.css
args.cssroot = metadata

我发现输出html引用${DITA_INSTALL_DIR}/dita-ot-3.0.4/plugins/org.dita.html5/css/commonltr.css,所以我将CSS添加到它并且我的预期输出即将到来,但我认为这并不好,因为这些更改将影响所有其他项目。

我在GitHub上检查了一些文档和问题,但我还没找到解决方案。你有什么建议吗?

参考文献:

1 个答案:

答案 0 :(得分:1)

您的“args.cssroot”作为相对位置“元数据”给出。 该参数的文档陈述如下:

   The value you enter here will be interpreted relative to the location of the input map file.

但是从我在构建文件中看到的情况并非如此,相对位置似乎与发布过程开始的当前文件夹相关(可能是“DITA-OT \ bin”)。 所以也许你可以尝试将args.cssroot作为绝对路径传递,看看它是否适合你。

通常在这种情况下,不是传递args.cssroot而是直接传递“args.css”作为绝对路径,这似乎对我有用。