Есть ли какой-нибудь css-селектор или что-то подобное, что позволяет применять различные стили к элементам на неактивной странице / окне в webkit? Есть для полос прокрутки: http://www.webkit.org/blog/363/styling-scrollbars/ Я использую это для того, чтобы приложение Titanium для настольных компьютеров стало более естественным в Mac OS X. Спасибо!
См .: http://www.thefutureoftheweb.com/blog/detect-browser-window-focus
Эти мероприятия работают во всех основных браузер (Firefox, Internet Explorer 6/7, Сафари и Опера).
Демо: http://www.thefutureoftheweb.com/demo/2007-05-16-detect-browser-window-focus/
function onBlur() { document.body.className = 'blurred'; }; function onFocus(){ document.body.className = 'focused'; }; if (/*@cc_on!@*/false) { // check for Internet Explorer document.onfocusin = onFocus; document.onfocusout = onBlur; } else { window.onfocus = onFocus; window.onblur = onBlur; }
Поскольку вы фокусируете только WebKit, теоретически вы можете использовать псевдоселектор :window-inactive, который должен работать с полосами прокрутки. Я не тестировал его на MacOS X, но вы можете попробовать.
:window-inactive
Но если вы хотите что-то более кросс-браузерное, используйте JavaScript, чтобы определить класс CSS на основе активности окна. Смотрите эту ветку: Есть ли способ обнаружить, если окно браузера не активно в данный момент?
к сожалению :window-inactive не стандартизирован и работает только на полосах прокрутки и выделении текста с использованием ::selection, насколько я знаю.Вы должны использовать JavaScript, чтобы получить то, что вы хотите.
::selection