Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   Вернуть элементу стиль, по-умолчанию заданный браузером (https://javascript.ru/forum/xhtml-html-css/29242-vernut-ehlementu-stil-po-umolchaniyu-zadannyjj-brauzerom.html)

Gvozd 20.06.2012 21:31

Вернуть элементу стиль, по-умолчанию заданный браузером
 
Например в таком случае
<style>
textarea {
    background-color : #fff;
}
</style>
<textarea></textarea>
<textarea disabled="disabled"></textarea>

при таких стилях неактивный textarea становится слабоотличим от активного
Возможно ли как-то не меняя исходные стили, привести неактивный textarea в его вид по-умолчанию
Пока есть только такие идеи:
1) создать фрейм без подключенных стилей, и узнать из него как по-умолчанию выглядит textarea, а затем динамически присвоить нужный фон(или создать правило в стилях)
2) пробежаться по всем таблицам стилей, в поисках подходящих селекторов, временно отключить их правила, после проверить стили textarea, и вернуть обратно отключенные стили

Но мне эти решения не кажутся удачными, особенно второе, поэтому ищу другие пути решения

Octane 20.06.2012 21:42

Стандартное оформление не вернется, если только 2й варинат… А почему бы изначально не использовать селектор textarea:not([disabled]), или такой возможности нет?

Gvozd 20.06.2012 21:56

Цитата:

Сообщение от Octane
А почему бы изначально не использовать селектор textarea:not([disabled]), или такой возможности нет?

нету возможности менять этот код

Deff 20.06.2012 22:16

<style>
textarea {
    background-color : #F0F0F0;
}
textarea[disabled="disabled"]{
    background:none;
}
</style>
<textarea></textarea>
<textarea disabled="disabled"></textarea>

Gvozd 20.06.2012 22:21

Deff,
Вы не совсем поняли
Задача не в том, чтобы задать неактивному textarea красный, серый или любой другой конкретно заданный фон
Задача в том, чтобы задать ему тот фон, который принят в данном браузере по-умолчанию для него
В разных браузерах этот фон разный, и хотелось бы естественного отображения, несмотря на жестко заданный стиль

Gvozd 20.06.2012 22:27

Цитата:

Сообщение от Deff
А так ?

Два одинаковых textarea с цветом фона заданным в первом CSS-правиле

Deff 20.06.2012 22:29

Gvozd,
Воть (помню, что делал

melky 20.06.2012 22:34

Цитата:

Сообщение от Gvozd (Сообщение 182838)
нету возможности менять этот код

А почему нельзя прописать такой селектор с помощью JS ?

Gvozd 20.06.2012 22:48

Цитата:

Сообщение от melky
А почему нельзя прописать такой селектор с помощью JS ?

Всмысле найти и изменить селектор в конкретном cssRule?
перебирать все styleSheet-ы, и их cssRule я оставил на крайний случае

Seva1986 20.06.2012 22:49

Цитата:

Сообщение от Gvozd
Задача в том, чтобы задать ему тот фон, который принят в данном браузере по-умолчанию для него
В разных браузерах этот фон разный, и хотелось бы естественного отображения, несмотря на жестко заданный стиль

css никак.
Пришли в голову два варианта потом посмотрел ваш первый пост и понял что вам тоже они пришли в голову.

мне первый вариант нравиться.


Часовой пояс GMT +3, время: 18:57.