IE8 падает при стилизации ввода [type=submit] с помощью CSS3 PIE
Иногда страница работает, и вам нужно обновить страницу, чтобы увидеть ее сбой.
Вы можете увидеть живой пример здесь: http://rcnhca.org.uk/sites/first_steps/account/ (ie7 работает нормально, я не поддерживаю ie6)
Я пытаюсь стилизовать мою кнопку отправки со следующими значениями:
a.button, input.button {
border: 2px solid #3A90A7;
border-radius: 5px 5px 5px 5px;
color: #202D32;
display: block;
float: left;
height: 2.6em;
line-height: 2.6em;
margin: 0.667em 0.333em;
padding: 0 1em;
position: relative;
text-decoration: none;
}
a.button:hover, input.button:hover{
border: #202d32 solid 2px;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 0 3px #FFFFFF inset;
-moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 0 3px #FFFFFF inset;
}
input[type=submit] {
behavior: url(http://rcnhca.org.uk/sites/first_steps/PIE.htc);
position: relative;
-pie-poll:true;
}
a.button:hover, input.button:hover{
-pie-box-shadow: none;
}
.button {
-pie-background: linear-gradient(top, #ffffff 0%,#e5e5e5 100%);
}
.button.active {
-pie-background: linear-gradient(top, #b7b7b7 0%,#b7b7b7 8%,#e5e5e5 8%,#ffffff 100%);
}
Наконец, кнопка отправки во всей красе:
<input id="submitbtn" class="button omega" type="submit" value="Create your account" name="submit">
Кто-нибудь знает, что может быть причиной этой аварии? Я не получаю никакой информации, кроме сценария, который заставляет страницу работать медленно.
3 ответа
После еще одного тестирования я нашел ответ на эту проблему, дело не в том, что это была кнопка отправки, а в том, что это была какая-то кнопка формы, и я дал ее font-size
,
Если я удалю font-size
свойство на элементе тогда IE8 перестает падать, и я счастливый кролик.
Извините, так как я не включил ту часть CSS, которая имела размер шрифта (это большой файл, я его застеклил).
У меня была та же проблема, и я обнаружил, что моя кнопка не работает в IE8, потому что мне нужна была одна из границ none
и это разбило мой CSS3PIE. Я изменился с border-left: none;
в border-left-width: 0;
и это сработало.
Я собираюсь проверить и протестировать, но сначала вам нужно узнать кое-что о CSS3PIE
CSS3PIE использует VML -язык разметки векторов, который позволяет рисовать графику с использованием Javascript, и включает функции для создания популярных CSS3-подобных эффектов, но с ограничениями.
Поскольку он использует Javascript для рисования графики, он использует много ресурсов браузера и вызывает его зависание и, в конечном итоге, сбой.
Я использовал CSS3PIE и раньше, но бросил его после прочтения этой впечатляющей аналогии Пола Айриша. Вы должны сосредоточиться на адаптации вашего дизайна, чтобы изящно ухудшить IE. Было бы лучше, если бы вы использовали что-то вроде Modernizr для проверки отсутствующих функций в браузере и добавления к нему определенных стилей.
Вернусь после тестирования
Обновить
Я тестировал в IE8, и да, он падает. Там нет ничего, что вы можете пойти, я думаю:(
Я бы порекомендовал вам запасной вариант для сплошного светло-серого цвета или использовать фоновое градиентное изображение.