2

我在 Firefox 上有一个 Stylish 脚本,它在起始页上移动搜索按钮,但问题是它也会在其他页面上移动搜索按钮。

线条

@-moz-document url("http://startingpage.com/eng/advanced-search.html?&cat=web&query=")

或者

@-moz-document domain("http://startingpage.com/eng/advanced-search.html?&cat=web&query=")

不工作。搜索按钮将在任何有它的页面上移动。

有什么想法可以使其特定于站点吗?

这是脚本:

@-moz-document url("http://startingpage.com/eng/advanced-search.html?&cat=web&query="){

}
  input[value="Search"] /*isolates button*/
  {
   position: absolute;
   top: 311px;
   left: 660px;
  }

火狐 3.6.14,赢 2K

4

2 回答 2

1

一般回答:

第一行 ( @-moz-document url("http://startingpage.com/eng/advanced-search.html?&cat=web&query=")) 应该可以工作。它只是因为其他页面也受到影响而失败还是因为它从不触发而失败?

无论如何,要检查的事情:

  1. 是否省略了开口大括号?通常这些行是这样的:

    @-moz-document url("http://www.google.com/hl=en&q=foo&aq=f") {
    

    注意最后的大括号(但是在下一行编辑大括号也很好。

  2. 开始页面之后的下一页是否由 AJAX 加载?例如,谷歌就是这样做的。您会注意到,在输入搜索词后,整个页面不会重新加载。
    如果是这种情况,那么 Stylish 将仍然具有有效的覆盖样式;在 Stylish 中没有任何帮助。

所以,用你的第一行确认问题。最好包含指向目标页面和完整脚本的确切链接。

如果是 AJAX 问题,那么您可以轻松地将 Stylish 脚本转换为 Greasemonkey 脚本 —— 通过一点逻辑,即使在 Ajaxified 页面上,它也可以正确应用样式。(如果是这种情况:将此问题标记为已回答并打开一个新问题,提供完整的 Stylish 脚本和所需的结果。)


具体答案,基于来自 OP 的新信息:

根据提供的脚本,错误是大括号位置错误。此外,您应该提供命名空间。

因此,将脚本文本替换为:

@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document url("http://startingpage.com/eng/advanced-search.html?&cat=web&query=")
{
    input[value="Search"] /*isolates button*/
    {
        position: absolute;
        top: 311px;
        left: 660px;
    }
}
于 2011-03-03T01:13:52.093 回答
0
@-moz-document url-prefix("http://startingpage.com/eng")

或者

@-moz-document domain(startingpage.com)
于 2011-03-03T00:30:50.530 回答