2013-11-18 1 views
3

Я не хочу, чтобы ясная функциональность (кнопка X) в текстовых полях, отображаемых в IE10 и выше. Для этого я устанавливаю отображение псевдоэлемента -ms-clear на none. Тем не менее, он все еще отображается, когда IE работает в режиме совместимости. Поскольку это сайт Intranet, он всегда будет работать в режиме совместимости. И нет обходного пути для этого: http://connect.microsoft.com/IE/feedback/details/783743/disable-ie10-clear-field-button-when-rendering-in-compatibility-modeОтключить прозрачное поле IE10 в режиме совместимости

Использование <add name="X-UA-Compatible" value="IE=edge" /> в web.config для принудительного запуска IE в стандартном режиме в соответствии с msdn в отношении производственных сценариев. Есть ли другой способ обойти это?

+3

я использовал' 'и он [работал хорошо] (http://stackoverflow.com/a/8942455/7586). Это, безусловно, лучшее решение, чем работа в режиме совместимости. – Kobi

+0

По ссылке, включенной в вопрос, это просто невозможно. IE10/11 не включает эту способность в режиме совместимости. Если вы хотите избавиться от прозрачного виджета, единственный вариант, который у вас есть - это перейти в режим стандартов. Другого пути вокруг нет. (Мне любопытно узнать, почему ваш сайт застрял в режиме совместимости, скорее всего, это не обязательно). – Spudley

+0

@Spudley: IE настроен по умолчанию, чтобы показать сайты интрасети в режиме совместимости, и я не хочу оставлять его для перехода к стандартному режиму. Использование IE = edge, по-видимому, не является рекомендуемым способом производства. :( – DipraG

ответ

0

Хотя это, безусловно, не рекомендуется в всех случаях установить X-UA-Compatible заголовок IE=edge, поскольку он оставляет контроль из рук, который выбран «край» версии, это полностью зависит от вас доверять свой код достаточно, чтобы быть достаточно HTML5-совместимый, чтобы корректно отображать рендеринг в будущих браузерах. Если вы это сделаете, вы можете игнорировать рекомендацию не использовать IE=edge, поэтому это рекомендация, а не запрещено.

Более консервативно вы также можете выбрать фиксированную версию. Если ваша аудитория использует смешанный мешок IE9, 10 и 11 установок, и вы будете уверены, что она прекрасно работает в IE9 - используйте:

<add name="X-UA-Compatible" value="IE=9" /> 

Это позволит сделать все более поздние IE, чем 9 и вынести его в Режим совместимости со стандартом IE9, который намного лучше, чем базовый режим совместимости (который по существу является IE7 Quirks).

Вкратце - рекомендации справедливы и могут быть смело проигнорированы, если вы осведомлены о последствиях и принимаете надлежащие меры предосторожности.

+0

(поздний комментарий, но ...) FYI Я проигнорировал этот ответ, потому что он не ответил на вопрос, который больше связан с фиксацией ms-clear, чем с использованием X-UA-Compatible (фактически, заставляя режим IE9 это то, что * вызывает * проблему, а не решение, как подразумевается в ответ) – patstuart

1

Согласно официальному ответу microsfts' Вопрос вы сообщаете является дизайн ".Здесь есть ссылка на официальный ответ от майкрософт link