Селектор IE8 CSS выбирает, но не применяет стиль

Отладка опыта http://www.dmhermitage.org/wtfborders.pngThis заставляет меня хотеть уничтожить меня.

У меня есть некоторый действительно простой CSS для моделирования моих входных объектов:

    input, button
    {
        border: 1px solid #c66600;
        background-color: white;
        color: #7d212f;
        font-family: "Eras Light ITC", Tahoma, sans;
    }

Но мне не нравится ужасная граница, которую это помещает вокруг переключателей, таким образом, я использую селектор для уничтожения границы:

input[type=radio] { border: none; }

Можно, вероятно, предположить, в каких браузерах это работает и в каком это не работает. То, что забавно, - когда я нажимаю F12 для запуска превосходных инструментов разработчика в IE8, он на самом деле говорит мне, что стиль переключателей не был переопределен ни к 'одному' точно так же, как я попросил, чтобы это сделало, но граница остается на объектах переключателя.

Я попробовал множество семантических вещей, как установка ширины рамки до 0px или цвета к чему-то безумному как лимонно-зеленый, но это остается первоначально присвоенным цветом, который это получило от первого стиля.

И наконец, я попытался только разработать 'текстовые' объекты, в этом случае никакой стиль ни к чему не применяется. Снова, браузер утверждает, что выполнил выбор CSS, но этого визуально не происходит.

Мысли?

Между прочим, это - установка DotNetNuke со сгенерированным кодом, где я не могу явно установить стиль переключателей.

Спасибо, Dan

5
задан piet.t 3 February 2016 в 10:18
поделиться

6 ответов

IE8, похоже, выполняет рендеринг в режиме причуд, а не в стандартном режиме, который всегда портит все в IE. Чтобы переключиться в стандартный режим, самый простой способ - заменить doctype в первой строке документа следующим образом:

<!DOCTYPE HTML>

Вы также можете просмотреть часть выводимого HTML. У вас есть диапазон с идентификатором dnn_dnnMENU_ctldnnMENU , который содержит десятки надуманных атрибутов, таких как BackColor , SysImgPath , MenuItemHeight и так далее. Это не повлияет на большинство браузеров (возможно, IE интерпретирует их специально, я не знаю).

2
ответ дан 15 December 2019 в 06:21
поделиться

Вы можете удалить границу, установив для атрибута встроенного стиля на панели инструментов разработчика значение border: none; ... Поэтому по какой-то причине стиль не применяется к переключателю, хотя стиль трассируется правильно. Похоже на какую-то ошибку ... Вы пытались повысить специфичность правила (оно уже должно быть выше, чем ввод, но просто для того, чтобы попробовать)?

Например:

#page input[type=radio] {
   border: none;
}
0
ответ дан 15 December 2019 в 06:21
поделиться

Это больше невозможно с CSS (насколько я знаю), но используя этот Javascript здесь, вы сможете; Стилизация флажков и переключателей с помощью CSS и Javascript .

0
ответ дан 15 December 2019 в 06:21
поделиться

проблема в том, что ...

Будучи самым полезным, обратите внимание, что каким-то образом ваша страница отображается в режиме причуд , таким образом, каким-то образом никому не следует использовать.

решение [править]

из-за: http://dorward.me.uk/www/ie8/

установите свой тип документа html 4 на:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
1
ответ дан 15 December 2019 в 06:21
поделиться

Гадкий. Попробуйте указать белый цвет границы?

0
ответ дан 15 December 2019 в 06:21
поделиться

На всякий случай, вы пробовали:

input[type='radio'] { border: none; }

Обратите внимание на добавление апострофа (или как бы вы его ни называли на своем забавном языке: P)


Я посмотрел на сайт, ваш CSS правильный, и там Я ничем не могу вам помочь. Удачи!

0
ответ дан 15 December 2019 в 06:21
поделиться
Другие вопросы по тегам:

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