怎么用 Stylish 排除某几类网址

前端之家收集整理的这篇文章主要介绍了怎么用 Stylish 排除某几类网址前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

怎么用 Stylish 排除某几类网址

Stylish - 用Stylish(一个用户样式管理器)给网页换个样式。Stylish 让您轻松为 Baidu、Google、Facebook、GitHub 及更多其他网站安装主题和皮肤。您甚至可以自己定制 Firefox 和其他程序。

据调查得知,很多用户使用 Stylish 这个插件是为了给白色背景的网页换个颜色,比如豆绿色 #CCE8CF 来降低长时间浏览网页导致的眼睛疲劳。那么用户需要编写一个通用的样式来应用到所有网站。

但是使用过程中会发现都用同一个背景颜色时,有些网站就变得难看了。比如使用样式:

@-moz-document url-prefix(http://),url-prefix(https://) {
    /* Headings */
    h1,h2,h3,h4,h5,h6  {background-color:#CCE8CF !important;}

    /* text */
    body,p,div,table  {background-color:#CCE8CF !important;}

    /* Links */
    a:link  {color:#0000FF !important;} /* color:blue */
    a:visited  {color:#800080 !important;} /* color:purple */
}

会使所有 http、https 网页改为以豆绿色为背景颜色,这时你会发现百度地图的网页就变得丑陋了,github 网页也不好看。于是,你需要一个能改变绝大多数网页的样式除了某些特定的网页的样式。

一个可行的解决方案是使用正则表达式作为匹配网址的规则。但是正则表达式用法很负责,特别是涉及到 非、或 这样的逻辑关系时更是不好理解。所以,我搜索前人的解决方案并学习适用于 JavaScript 的正则表达式来写出几个示例供大家参考,希望能帮到大家。

以上文样式代码为例,需要替换的语句是 @-moz-document url-prefix(http://),url-prefix(https://)
当替换为 @-moz-document regexp('(?!^https?://github\\.com).*') 时样式将作用于除了以 https://github.com 开头的网址之外的所有网页。

当替换为 @-moz-document regexp('(?!^https?:\/\/(github\\.com|bitbucket\\.org))\\S*') 时样式将作用于除了以 https://github.comhttps://bitbucket.org 开头的网址之外的所有网页。

如果需要排除 https://github.comhttps://bitbucket.orghttp://ditu.baidu.com 可参考 护眼样式

更多需求可以依照上面的例子依葫芦画瓢。

学习正则表达式可参考 Regular Expressions

版权声明:本文版权属于若要走,并受法律保护。本文授权方式采用 Creative Commons 署名 - 非商业性使用 - 禁止演绎 4.0 许可协议。接受自由转载,但必须署名、注明来源,且禁止用于商业用途。

猜你在找的正则表达式相关文章