我想重现大纲效果的集中输入框在webkit到非webkit浏览器。我发现
here在webkit中使用的默认CSS。感兴趣的线是:
:focus { outline: auto 5px -webkit-focus-ring-color }
解决方法
-webkit-focus-ring-color在WebKit代码库中定义为每个RenderTheme类中的focusRingColor。这项工作于2009年6月作为
this changeset by Jeremy Moskovich年的一部分进行。
例如,默认的Mac主题(由Safari使用)将RenderThemeMac.mm
中的颜色(以迂回的方式)定义为:
[NSColor keyboardFocusIndicatorColor]
(Apple’s very light documentation of that property is available online)。
有一个覆盖值的Mac(称为WebCore :: oldAquaFocusRingColor)用于测试(接近,我可以告诉它的代码,以能够执行浏览器渲染和参考图形之间的比较;它使用WebCore切换:: usesTestModeFocusRingColor)。它在ColorMac.mm
中定义为以下(它显然映射到颜色(125,173,217)):
0xFF7DADD9
Chromium / Chrome将颜色定义为RenderThemeChromiumSkia.cpp
:
Color(229,151,255)
默认颜色(在RenderTheme.h
中指定)是纯黑色:
Color(0,0)