2011-01-03 1 views
16

Я не могу заставить IE9 визуализировать набор полей с закругленными углами, в то время как другие браузеры делают. Неужели кто-нибудь сталкивался с этим?IE9 fieldset закругленные углы

+2

Не могли бы вы высказать свой код? –

+0

Повторите: http: //stackoverflow.com/questions/635851/support-for-border-radius-in-ie – tcooc

+1

@digitalFresh: вы прочитали вопрос? это о IE9 - и IE9 поддерживает граничный радиус (как указано в вашей ссылке) – oezi

ответ

0

Усовершенствование визуализации в полевых условиях всегда сопряжено с проблемами с рендерингом и особенно с печатью. Неудивительно, что это не работает.

Стандартное обходное решение - добавить еще один контейнер и стиль, который.

1

его работает только в последней гс сборки, Эйнт работает в бета-версии IE9 попробовать

 

.class { 
border-radius-right-bottom: 15px; 
} 
 
+1

Это хороший момент для повторного итерации - IE9 не является выпущенным продуктом. Это в бета-версии. Не ожидайте, что все будет работать. И не используйте его в качестве основного браузера, если вы не готовы к неожиданным неожиданностям. – Spudley

+0

это правда. действительно, сэр. –

0

Чтобы получить IE9 использовать закругленные углы (CSS 3) вы должны добавить это в заголовок HTML:

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />

Затем с помощью CSS, как обычно: border-radius-right-bottom:15px;

Я была такая же проблема & это исправлено.

+0

IE9 * должен * поддерживать 'border-radius' по умолчанию. Если вам нужно использовать это, это означает, что у вас есть что-то в ваших настройках, которые заставляют его переходить в режим совместимости с IE8. Вы можете проверить настройки. Если вы используете эту технику, тогда вы сможете уйти просто с помощью 'IE = Edge'; остальное не имеет значения, поскольку ни один другой браузер не признает «совместимый с X-UA-совместимым» в любом случае, и даже если бы это было так, зачем вы хотели бы заставить их указать номер версии (вы исправляете причуду в IE здесь, а не в Firefox). – Spudley

3

Из моего опыта в последней версии IE9 я не могу получить поле с легендой радиуса. У меня не было никаких проблем с другими границами в IE9, граница css3 border-radius работает просто отлично, только fieldset/ledgend. Я все еще почесываю голову над этим.

+1

Кажется, это ошибка в выпуске IE9 для легенды fieldset +, которая, по меньшей мере, раздражает. – Tracker1

21

Это происходит, только если вы используете <fieldset> с <legend> - без него углы визуализируются ок.

Вы можете исправить эту ошибку, применяя display:inline или display:inline-block к вашему <legend> элемент - но чем вы должны переместить его на место, установив position:relative и перемещая его вокруг.

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

+2

Это должен быть правильный ответ. – Nicsoft

+2

Я обнаружил, что, хотя это и решило проблему в IE, она сломала ее в хроме. Позиционирование, которое я должен было применить к легенде, чтобы переместить его в нужное место, переместило его на крайний шаг в хром, но в FF и IE все-таки было хорошо. В качестве работы я закрепил стили, чтобы исправить ее в IE только в IE [только для IE] (http://css-tricks.com/how-to-create-an-ie-only-stylesheet/). Для записи стиль, который я использовал, был: 'display: inline-block; относительное положение; высота: 30 пикселей; top: -15px; ' – Ben

+1

Очевидно. Это касается только таблицы стилей IE - вопрос помечен как интернет-проводник - это исправление для IE - вы всегда хотите применить исправление только к багги-браузеру. – easwee

1

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />

Это, как это исправить.

3

Я тоже привык использовать fieldset и для более чем просто форм, но постоянный удар и пропуски по совместимости заставили меня сбросить их. Лучше писать собственные классы CSS DIV, которые эмулируют набор полей. С помощью CSS вы можете получить точную копию того, что FIELDSET выглядит как и у вас есть гораздо больше гибкости и совместимости

1

Это все еще проблема при IE11 при использовании легенды , и решение в этой теме :

Rounded corners on a fieldset

fieldset { 
     margin:20px; 
     padding:0 10px 10px; 
     border:1px solid #666; 
     border-radius:8px; 
     box-shadow:0 0 10px #666; 
     padding-top:10px; 
} 

legend { 
     padding:2px 4px; 
     background:#fff; 
    } 


    fieldset > legend { 
     float:left; 
     margin-top:-20px; 
    } 
    fieldset > legend + * { 
     clear:both; 
    } 

http://www.456bereastreet.com/archive/201302/fieldset_legend_border-radius_and_box-shadow/

0

У меня был доступ только к файлу CSS, поэтому я не мог вносить какие-либо изменения в HTML, поэтому я сделал взломать CSS для IE.

HTML структура была:

<form> 
    <fieldset> 
     ...form content... 
    </fieldset> 
</form> 

Весь CSS для всех фрезы и с IE хак:

fieldset { 
    border-radius: 20px; 
    border: 1px #3D3D3D solid; 
} 
@media screen and (min-width:0\0) { 
    form { 
     border: 1px #3D3D3D solid; 
     border-radius: 20px; 
    } 
    fieldset { 
     border: 0 none; 
     margin-top: 1px; 
     margin-bottom: 1px; 
    } 
} 

Конечно, если ваш сайт имеет другой HTML-структуру, это не будет работать. Поэтому вместо «формы» вы можете применить в css родительский div вашего набора полей.

 Смежные вопросы

  • Нет связанных вопросов^_^