提问人:Mr Lister 提问时间:8/27/2015 最后编辑:CommunityMr Lister 更新时间:8/27/2015 访问量:147
在 XHTML DOCTYPE 声明中包含文件
Including files in the XHTML DOCTYPE declaration
问:
tl;dr:如何在XHTML文件的DOCTYPE声明中包含文件?这个答案的解决方案不起作用,在不同的浏览器中给出不同类型的错误。
加长版:
我对定义XHTML文件的字符实体感兴趣。XHTML5 的一个缺点是不能使用实体引用,例如 和 ,只能使用五个基本的 XML 引用。
é
恢复到 XHTML 1 DOCTYPE 会起作用(因为 XHTML DTD 包含所有实体的定义),但随后验证器会抱怨文件中的所有新 XHTML5 功能。
将文件类型恢复为也可以,但那样它就不再是 XHTML!(定义新实体在 HTML 中不起作用,只能在 XHTML 中工作。text/html
因此,解决方案是主动将所有实体名称添加到 DOCTYPE 声明中。
<!DOCTYPE html
[
<!ENTITY nbsp " ">
<!ENTITY eacute "é">
]
>
这很好用!但是,以这种方式包含数百个实体不会非常有效。通过包含文件来执行此操作会好得多。
我找到了这个答案,它似乎完全符合我的需求......
<!ENTITY % xhtml-special SYSTEM "xhtml-special.ent">
%xhtml-special;
但它不起作用。如果我尝试这样做,我会得到错误:在 Chromium 中; 在 SeaMonkey 中。PEReference: %xhtml-special; not found
XML Parsing Error: undefined entity
那么有谁知道应该怎么做呢?有一个工作的例子?
答: 暂无答案
评论