将html与svg等基于xml的语言结合使用的最佳实践是什么?

时间:2020-03-05 18:59:51  来源:igfitidea点击:

通过浏览该网站和其他地方,我了解到目前将网站作为xhtml提供服务被认为是有害的。

当前大多数浏览器不支持提供xhtml并将其用作application / xhtml + xml,将xhtml作为text / html充其量对我来说是安慰剂,而最坏的情况是,通常在我们最少需要它发生。

因此,我们最终回到了HTML 4.01. 如果我改为以html 4.01的形式提供页面,是否可以在页面上使用SVG或者其他基于xml的语言?

如果是这样,怎么办?

解决方案

回答

我们可能(读到我自己没有尝试过)使用嵌入式对象并进行相应的键入。

回答

在HTML中,我们将无法直接插入SVG。

我们可以使用<object> // <embed>嵌入SVG文件,也可以使用<img>和CSS background-image嵌入最新的浏览器(Opera,Safari)。

我们可以将SVG放在data:URI中,以避免使用外部文件。

可以借助Unicode和基本HTML / CSS编写简单的数学表达式(Opera 9.5通过CSS支持大量的MathML)。对于更复杂的事情,我们将需要使用图像,如Wikipedia一样。

HTML会误解名称空间前缀,因此我们将无法(正确)将其他XML标记与HTML DOM一起使用。 HTML5具有" data- *"属性,用于添加特定于应用程序的标记。对于元数据,请考虑微格式。

但是,如果我们只想为非浏览器(机器人)嵌入XML,则可以使用HTML兼容的XHTML子集和HTTP内容协商,以将正确类型的正确XML发送给理解它的客户端(如果我们对两种XML都进行了全面测试,和HTML模式,那么它就不会有害)。