Dlaczego więc "maksymalna szerokość" nie działa w tabelach w programie Internet Explorer 7? Maksymalna szerokość jest dostępna dla innych elementów i wygląda na to, że działa dobrze, ale gdy stosuje się do tabeli, nie mogę tego zrobić, tzn. Reguła Max-szerokość jest po prostu ignorowana. Oto kod:Maksymalna szerokość nie działa w tabeli dla IE7
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Foo</title>
</head>
<body>
<div style="background-color: Red; max-width: 1000px;">
<table style="background-color: Green; max-width: 500px;">
<tr>
<td><a href="#" class="action view">View</a></td>
<td>7/20/2011</td>
<td>James Smith</td>
<td>345 NW 23rd Ave Gainesville, FL 32606</td>
<td>Alachua Blah blah sf jfh jsdhjs fjsh djkf sdjkhk</td>
<td>345621</td>
<td>Fred Smith</td>
</tr>
</table>
</div>
</body>
</html>
W Firefoksie, tabela jest odpowiednio ograniczany do 500px, a tekst wewnątrz przerwach komórek w odpowiedni sposób (między słowami, tak jak można się spodziewać). W IE7 zastosowano podobną regułę "no-wrap". Każda komórka rozciąga się do jej potrzeb, bez prób dzielenia tekstu z komórką, a cały stół po prostu się rozciąga, aby zignorować zasadę maksymalnej szerokości.
Co się stało z tym gównem? Jak umieścić Max-Width na stole w IE7? (Współpracuje w FF & IE8)
Co Próbowałem, że nie działa:
tabeli {display: block; }
td {word-wrap: break-word; }
table {table-layout: fixed; }
Widocznie IE7 robi różne rzeczy z 'max-width' zależności od DTD: http://www.wileymedia.com/weblog/archives/2007/02/maxwidth_and_internet_explorer.html – vcsjones
Tak próbowałem kilka różnych DocTypes bezskutecznie. Ten artykuł jest poprawny dla ogólnych elementów blokowych, ale nie naprawia tabeli. – Graham