是否真的允许通过CSS导入文本?

时间:2015-12-31 01:33:09

标签: html css pseudo-element inject

有一个我无法控制的html页面,ditto适用于任何javascript。

然而,我可以设计它,我所做的其中一件事是通过content在CSS伪元素中注入一块文本。

然而,这个slab是多行,CSS字符串只有一行,导致一个充满\0a s的繁琐属性。

我想知道我是否可以使用url(blah/blah)语法和content来代替字符串;和docs say yes!

enter image description here

然而,当我尝试它(现在这块平板未编码并托管在其自己的文件中)时,内容不会显示。
查看devtools的网络选项卡显示它已被请求,但看起来浏览器忽略了它。

起初我认为这是一个标题问题(我刚刚在文件系统之外工作),所以我构建了一个小服务器来在localhost上应用text/plain(我也试过text/html)。 / p>

浏览器似乎只接受content的图片,并看到以下标题与chrome&#d; devtools中的请求一起发送; Accept:image/webp,image/*,*/*;q=0.8

这个问题也出现在firefox中,为什么mdn在语法中特别使用.html示例?
有没有什么方法可以获得我尝试和运行的东西,或者我是否可以处理冗长的CSS声明?

1 个答案:

答案 0 :(得分:1)

The docs说"外部资源(例如图片)"所以他们没有明确排除使用纯文本,但他们也没有明确允许。似乎很可能"例如图像"旨在允许进一步的媒体类型,如视频或交互式SVG,但故意模糊,以免不再猜测未来的技术。

因此,它似乎已被允许"因为你没有做任何无效的事情,但是没有得到支持,因为你没有理由期望它实际做任何有用的事情。

  

这个问题也出现在firefox中,为什么mdn在语法中专门使用.html示例?

我猜它只是一个RFC 6761和RFC 2606兼容的示例URI,经常在文档中用作示例URI。 (当然,对于挑剔,没有理由认为以.html结尾的URI也应该总是返回HTML,尽管这样做有点不正常。)