Firefox自定义外观,DOM Inspector查找元素ID的方法


Firefox自定义外观,查找元素ID对于普通用户而言,自定义Firefox外观用的最多的应该是隐藏多于的右键菜单项。最简单的方法莫过于使用Menu Editor扩展,支持不全面但使用简单。本着少装扩展的原则,可以使用Firefox原生的userChrome.css实现完全自定义Firefox整个外观,通过DOM Inspector查找元素。


userChrome.css + DOM Inspector

userChrome.css的位置在profiles\chrome\,一般没有,直接新建(UFT-8)。
DOM inspector是Firefox扩展
辅助扩展
Stylish
Element Inspector
除了userChrome.css是最后需要保留的外,其他三个扩展都可以在自定义后完全删除。


1.DOM inspector基本操作

DOM Inspector的使用方法网络上已经有教程,这里简单说明一下。以隐藏Firefox地址栏的“重新载入当前页面”按钮为例:

  1. Web开发工具——DOM Inspector;
  2. 地址栏输入“chrome://browser/content/browser.xul”,Inspect(操作File——Inspect Chrome Document———选择Firefox任意窗口,是一样的行为,都是在DOM Inspector中打开Firefox的外观);
  3. 点击“Find a node to inspect by clicking on it”图标(望远镜左边那个);
  4. 鼠标点击DOM Inspector界面中需要隐藏的“重新载入当前页面”按钮,自动显示相关代码:

Firefox隐藏菜单项

其中的id=”urlbar-reload-button”就是“重新载入当前页面”按钮对应的元素ID,在userChrome.css中则可以写成

#urlbar-reload-button {display: none !important;}

多个条目用”,”分隔,UTF-8格式。

当然,熟悉使用的话,可以不采用鼠标选取浏览的方式,在DOM Nodes中直接找到所有代码。
如果不知道应该选用哪些代码作为CSS的ID,可以看下面的辅助扩展。


2.Stylish辅助获取ID

DOM inspector查找到的元素信息很多,有些没有ID,甚至一些分割线什么信息都查不到,这时可以辅助使用Stylish,将自动获取可使用的ID信息:
Firefox隐藏菜单项
右键比DOM inspector多了“复制所选”,之后就可以选择已经自动识别的ID代码了。


3.Element Inspector,更加直观的查找对象

DOM inspector的鼠标选取查找并不完善,不少内容并不能直接通过鼠标选取。比如多列菜单、鼠标右键菜单和Adblock Plus图标等。当然可以在DOM inspector的Dom Nodes中直接查找:

#tabContextMenu /*标签页右键菜单*/
#contentAreaContextMenu /*页面鼠标右键菜单*/
#placesContext /*书签右键菜单*/
#navigator-toolbox /*整个工具栏*/

Element Inspector提供了更加直观的查找方法。
安装DOM inspector + Element Inspector后(Version 0.0.5 可以不安装 DOM Inspector),不用再开启DOM inspector,直接在Firefox界面对需要查找的元素使用“Shift + 鼠标右键”,则Element Inspector会自动弹出DOM inspector 对应的信息窗口。


查找到元素ID,除了隐藏,也可以自定义化其他外观。比如,调整Firefox标签栏宽度:

.tabbrowser-tab:not([pinned])[fadein]
{ max-width: 180px !important; min-width: 170px !important; }

表示最小宽度为170px,最大为180px。
每一版本的Firefox,或者是不同的主题,元素ID略有不同。