Это, конечно, полезная функция, но есть ли способ ее отключить? Например, если форма представляет собой одно текстовое поле и уже имеет "четкую" кнопку рядом с ней, то избыточно также иметь X. В этой ситуации было бы лучше удалить ее.
Можно ли это сделать, и если да, то как?
Ответ 1
Настройте ::-ms-clear
псевдоэлемент для поля:
.someinput::-ms-clear {
display: none;
}
Ответ 2
Мне было лучше установить width
и height
на 0px
. В противном случае IE10 игнорирует заполнение, определенное в поле - padding-right
- которое предназначено для того, чтобы текст не печатался над символом "X", который я наложил на поле ввода. Я предполагаю, что IE10 внутренне применяет padding-right
ввода к псевдоэлементу ::--ms-clear
, и скрытие псевдоэлемента не восстанавливает значение padding-right
в input
.
Это помогло мне лучше:
.someinput::-ms-clear {
width : 0;
height: 0;
}
Ответ 3
Я применил бы это правило ко всем полям ввода текста типа, поэтому его не нужно дублировать позже:
input[type=text]::-ms-clear { display: none; }
Как указано David Cumps, можно даже получить менее конкретную информацию, используя только:
::-ms-clear { display: none; }
Я использовал позже даже до добавления этого ответа, но думал, что большинство людей предпочитают быть более конкретными, чем это. Оба решения работают нормально.
Ответ 4
Вы должны стилизовать для ::-ms-clear
(http://msdn.microsoft.com/en-us/library/windows/apps/hh465740.aspx):
::-ms-clear {
display: none;
}
И вы также создаете псевдо-элемент ::-ms-reveal
для поля пароля:
::-ms-reveal {
display: none;
}
Ответ 5
Я думаю, стоит отметить, что все решения на основе стиля и CSS не работают, когда страница работает в режиме совместимости. Средство рендеринга режима совместимости игнорирует элемент:: - ms-clear, хотя браузер показывает x.
Если ваша страница должна работать в режиме совместимости, вы можете застрять в отображении X.
В моем случае я работаю с некоторыми контрольными данными, связанными с третьей стороной, и нашим решением было обработать событие "onchange" и очистить хранилище резервных копий, если поле очищено с помощью кнопки x.