我有以下CSS代码:
<style>
.crumbContTop > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(1) {
position: fixed;
bottom: 0px;
width: 98%;
}
#navMenuContainer {
position: fixed;
top: 5px;
z-index: 2;
}
#navBar > div:nth-child(1) {
position: fixed;
top: 5px;
z-index: 1;
right:0px;
}
#navBar {
position: fixed;
top: 0px;
z-index: 1;
width:4000px;
height:15px;
}
td.cell1 {
position:fixed;
bottom:0px;
z-index:1;
padding:20px;
right:0px;
opacity:0.7;
visibility:visible !important;
}
#main-header {
position:fixed;
top:0px !important;
z-index:1 !important;
width:100%;
}
</style>
我只想将其转换为Greasemonkey脚本,基本上这可以修复位于屏幕顶部和底部的导航条的位置。 问题是,如果说他正在期待一个标识符,而不是&#34; &LT; &#34;
任何帮助?
感谢。
(还有一个问题,我如何使位置保持静态,但当对象在屏幕外时它会被修复?)
答案 0 :(得分:1)
正如Hellion指出的那样,Greasemonkey用GM_addStyle
覆盖了这个问题。来自维基:
GM_addStyle("body { color: white; } /* CSS etc, etc */");
Greasemonkey只是JS,所以你不能在Greasemonkey脚本中直接使用CSS;你需要以某种方式将它注入页面。
在http://www.techradar.com/us/news/internet/the-beginner-s-guide-to-greasemonkey-scripting-598247/2上展示,您可以添加一个函数来向页面添加样式表,然后将CSS存储在字符串中:
function addCss(cssString) {
var head = document.getElementsByTagName('head')[0];
var newCss = document.createElement('style');
newCss.type = "text/css";
newCss.innerHTML = cssString;
head.appendChild(newCss);
}
在您的脚本中的某个时刻,在您当前的CSS上调用addCss
:
addCss("#mainHeader { position:fixed;} /* more CSS here */");