Вопрос по css – Как выбрать радио-кнопку в CSS?

38

Как вы выбираете переключатель в CSS? HTML, с которым я работаю, генерируется, поэтому я не могу добавить к нему класс или другие атрибуты.

Я нашел ввод [type = & quot; radio & quot;] в Интернете, но я не знаю, является ли это обычным CSS и поддерживается большинством браузеров.

Есть ли другие способы выбора радиокнопки?

Спасибо,

Brett

Ваш Ответ

6   ответов
9

radio & quot;]) является правильным решением, широко поддерживаемым всем, кроме IE6 :)

Если у вас нет возможности изменить HTML, чтобы добавить поддержку имени класса (или получить доступ к javascript для достижения этой цели), тогда вы можете:

А). чтобы убедиться, что ваш сайт не зависит от этого, и позволить IE6 изящно ухудшиться.

Б). жить без этого

4

JQuery выбрать вход и динамически добавить класс.

Пример (источник:http://docs.jquery.com/Attributes/addClass#class):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
                    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){
    $("p:last").addClass("selected highlight");
  });
  </script>
  <style>
  p { margin: 8px; font-size:16px; }
  .selected { color:red; }
  .highlight { background:yellow; }
  </style>
</head>
<body>
  <p>Hello</p>
  <p>and</p>
  <p>Goodbye</p>
</body>
</html>

[Редактировать]

альтернативой jQuery является использование http://code.google.com/p/ie7-js/

он исправляет множество проблем с версиями ниже 7 исправление, которое вас больше всего заинтересует, показано здесь:

http://ie7-js.googlecode.com/svn/test/attr-value.html

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Brettski
0

чтобы найти все переключатели на странице, а затем добавить несколько классов CSS.

0

браузерах, кроме IE6. Для IE6 вам придется либо найти способ их выбора, либо изменить HTML, либо использовать Javascript.

64

input[type="radio"] является примеромселектор атрибута, Это часть спецификации CSS3 и является абсолютно законной. Единственный браузер, который их не поддерживает, это IE6. Если поддержка IE6 важна для проекта, то вам следует изучить возможность добавления классов к указанным переключателям.

Вот статья с примером того, как эффективно использовать атрибуты селекторов. Проверять, выписыватьсяЭта статья для получения дополнительной информации о вкусностях CSS3.

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Brettski
Error: User Rate Limit Exceeded
1

который вы упомянули выше, является правильным способом нацеливания на него с помощью CSS. Это называетсяселектор атрибута, Это не поддерживается IE6 и ниже, однако. Их можно смоделировать, добавив скрипт условного поведения для IE6. (Просто поиск в Google, окончание файла обычно .htc).

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

Error: User Rate Limit Exceeded

Похожие вопросы