2013-06-30 5 views
14

Для моего ввода, который может иметь classname="half" или "half.not-placeholder-value", Firebug показывает оба входа, чтобы иметь набор, фиксированную ширину 25em.CSS Max-Width в IE8

input.half, input.half.not-placeholder-value { 
    max-width: 25em; 
} 

Тем не менее, по инструментам разработчика, IE8, кажется, не использовать данный max-width атрибут. Я говорю, что «похоже, не используется», поскольку поведение Firefox отличается от IE8 по отношению к этому атрибуту.

Но MDN docs говорят, что IE7 поддерживает max-width. Я что-то упускаю?

+0

Я не уверен, что 'Макс-width' имеет смысл без какой-либо переменной ширины (например,' ширина: 100% ') –

+0

Хмм .. Но, в Firefox, он создает фиксированную длину моего Входы - мое желаемое поведение. Без max-width размеры ввода варьируются в зависимости от любого класса. –

+0

Вы также пробовали добавить ширину: 100%; атрибут, чтобы увидеть, работает ли он? –

ответ

22

Это не является проблемой, так как IE8 IE8 делает поддержку максимальная ширина атрибута, но только тогда, когда дается определенный ширину первой.

input.half, input.half.not-placeholder-value { 
    width: 100%; 
    max-width: 25em; 
} 
2

Использовать IE8 css с width? Первая часть цели IE, вторая часть отменяет ее для IE9 +.

input.half, input.half.not-placeholder-value { 
    max-width: 25em; 
    width:25em\9; /* IE 8 */ 
} 
:root input.half, input.half.not-placeholder-value { 
    width:inherit\9; /* IE 9+ */ 
}