2010-10-15 5 views
2

Если мой КСС:Автоматическое преобразование CSS в Mozilla конкретной CSS

border-bottom-right-radius: 20px; 

есть библиотека JavaScript, который преобразует его в

-moz-border-radius-bottomright: 20px; 

автоматически при обнаружении агента пользователя, который является Mozilla браузер, например: Firefox?

+2

Вы можете не только указать их обоих в таблице стилей? – Spudley

ответ

1

Почему бы не просто добавить все объявления границ webkit и mozilla и сделать это.

-webkit-border-radius: 1px; 
-moz-border-radius: 1px; 
border-radius: 1px; 

http://border-radius.com/

+0

Потому что наличие css в 3 раза больше, чем нужно, это нехорошо. –

+0

Расширение одной декларации не приведет к разрыву банка для такой тривиальной задачи. – woodscreative

1

Дать Modernizr Взгляд.

+0

Э? Как это важно? Modernizr обнаруживает поддержку, а не версию поддержки. И даже тогда вам не нужно будет указывать версию '-moz'? –

+0

Я тоже не понимаю, как это важно. – codeinthehole

2

С Sass и Compass вы можете использовать mixins, которые автоматически устанавливают правила для браузера. This - это то, что вам, вероятно, нужно.

Существует также другая подобная библиотека - Less, но я еще не пробовал.

1

Это не является решением JavaScript, но LESS CSS можно достичь за счет использования 'функций'. LESS CSS работает с использованием Ruby, ASP или PHP.

Вскоре вы сможете использовать LESS с JavaScript. См. less.js для информации. Видимо, это сформирует МЕНЕЕ 2,0

Сначала определите функцию:

@border-radius(@radius:10px) { 
    -webkit-border-radius: @radius; 
    border-radius: @radius; 
    -moz-border-radius: @radius; 
} 

Затем ссылаться на него:

Э.Г.

#some-id { 
    @border-radius; 
} 

или

#some-id { 
    @border-radius(210px); 
} 
Смежные вопросы