2012-01-03 1 views
0

Im writing Usercript для одной страницы. Он работает под хромом. На этой странице те же элементы, которые имеют закругленные углы в firefox. Я хочу исправить его так, чтобы этот элемент имел закругленные края в google chrome.Скриншот страницы для регистрации css

Я просто хочу заменить синтаксис Firefox хром-синтаксисом во всех связанных стилях CSS. Каков наилучший способ сделать это?

Я использую jquery.

ответ

1

Это не тривиальное отношение к пользовательскому окну.

Умнее всего было бы установить что-то вроде Stylish и использовать его для переопределения стилей, которые вы действительно хотите.


трудности с пытаются сделать это с userscript являются:

  1. Вы не можете использовать getComputedStyle(), потому что это только возвращает разобран, применимые стили. Вы не увидите стилей «-moz» в Chrome и стилях «-webkit» в Firefox.

  2. Аналогичным образом, document.styleSheets также показывает только разобранные правила стиля с отфильтрованными правилами, специфичными для браузера.

  3. Вам нужно будет разобрать исходный текст CSS. Это textContent каждого <style> и текст AJAXed-in, полученный следующим образом: href каждого "text/css"<link>.

    Это может стать сложным и даже не думать об использовании RegEx, если вы хотите, чтобы решение было надежным.

  4. Междоменные ограничения также будут препятствовать извлечению текста <link>, но это можно уменьшить, используя GM_xmlhttpRequest().

  5. После того, как сырье CSS разбирается, тогда и только тогда вы можете идти о перекрывая выберите правила CSS следующим образом:

    Change Mozilla      To CSS3       
    ------------------------------  -------------------------- 
    -moz-border-radius-topright   border-top-right-radius  
    -moz-border-radius-bottomright  border-bottom-right-radius 
    -moz-border-radius-bottomleft  border-bottom-left-radius 
    -moz-border-radius-topleft   border-top-left-radius  
    -moz-border-radius     border-radius    
    
+0

о святой фу $% #. Похоже, будет проще управлять администратором сайта, чтобы он знал, что ему нужно это исправить. – Hooch

 Смежные вопросы

  • Нет связанных вопросов^_^