문제

나는 세트를 원한다 <td>s는 IE7에서 떠났다. 창이 너무 작 으면 다음 줄로 끊어 야합니다.

CSS

table {
  width: 100%;
}
td {
  border: 1px solid red;
}
tr.f td {
  width: 500px;
  float: left;
}

HTML :

<table>
  <tr class="f">
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
</table>

이것은 IE8과 Firefox에서 작동하지만 IE7에서는 그렇지 않습니다. 내가 뭘 잘못하고 있죠?

페이지 렌더링 모드는 "IE7 (Quirks)"또는 "IE7 (표준)"입니다. 그러나 IE8을 사용하고 있습니다. IE7 렌더링 모드가 그 말이라는 신뢰합니다. "IE8 Compatibility View"도 실패하고 있으며 "IE8 표준"만이 올바르게 얻습니다.

도움이 되었습니까?

해결책

나는 이것이 당신이 원하는 방식으로 가능하다고 생각하지 않습니다.

FF/IE8에서 플로트를 TD 요소에 적용하면 [CSS 2.1 사양에 따라 익명 테이블 개체가됩니다. 본질적으로, 그것들은 더 이상 테이블 셀이 아니며, 이러한 익명 객체에는 부유물이있는 디스플레이 유형이 있습니다.

IE7은 사양 의이 부분을 따르지 않습니다. 실제로 셀의 디스플레이 유형은 전혀 변경 될 수 없으며, 디스플레이 유형의 테이블 셀이있는 물체를 플로팅 할 수 없습니다.

ul/li 대신 테이블을 절대적으로 사용해야한다면 대신 이와 같은 일을 할 수 있습니까?

<style type="text/css" media="screen">`
    table {
        width: 100%;
    }
    .f {
        border: 1px solid red;
        float: left;
        height: 10px;
        width: 500px;
    }
</style>

<table summary="yes">
    <tr><td>
    <span class="f">1</span>
    <span class="f">2</span>
    <span class="f">3</span>
  </td></tr>
</table>

다른 팁

가장 좋은 추측 : IE7 이하는 더 엄격한 테이블 모델이 있으며 테이블 요소의 흐름을 변경할 수 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top