假设我在<body>
<script src="https://gist.github.com/2059.js"> </script>
查看该js文件,第一行是:
document.write('<link rel="stylesheet" href="https://gist.github.com/stylesheets/gist/embed.css"/>')
我没有该js文件的写权限。是否有可能动态交换embed.css并在href中交换到该css文件的另一个版本?可以这样做,它不需要用户输入 - 页面将加载我自己的CSS文件而不是embed.css?
答案 0 :(得分:4)
这里最简单的选择是以一种覆盖Gist CSS的方式加载自己的CSS - 这比尝试动态更改Gist提供的代码要简单得多。有两种选择:
将!important
添加到CSS声明中。
使用与Gist CSS相同的选择器,但使用另一个选择器作为前缀,使它们比Gist CSS声明更具体,例如: mycontentarea .gist-syntax .c
第二个选项可能会更可靠,只要你知道一个封闭元素的选择器。在这里查看一个工作示例(我用一个讨厌的黄色替换了标准的Gist字符串颜色):http://jsfiddle.net/aqGEc/