W moim projekcie próbuję zrobić przewijanie w IE8 na tbody
. Wiem, że można go przewinąć, podając tylko overflow: auto
do tbody
. Ale to nie działa w IE8. Aby działało w IE8, tbody
musi mieć position: absolute
(lub float: left
zarówno dla thead
i tbody
). Jeśli sprawiam, że overflow: auto
działa, to szerokości, które przypisałem do wartości procentowych th
i td
, są ignorowane. co z kolei nie pozwala, aby tr
zajmował całą szerokość w thead
i tbody
. W związku z tym istnieje drażniąca przestrzeń między tr
i tbody
/thead
.Przewijanie tabeli w IE8
Proszę przetestować ten demo w IE8. (działa dobrze w firefox i chrome)
i tutaj jest kod w fiddle.
Oto surowe punkty, których nie mogę zmienić
- Szerokość do
td
ith
musi być w procentach. - Nie mogę zmienić znacznika HTML
- To musi być rozwiązane za pomocą samego CSS.
Faktycznie, ja go rozwiązać z brudną poprawki brzmi następująco
th:after,td:after{ /* only to the last column, first occurence */
content: "...................................................";
visibility: hidden;
}
Powyższy kod można również sprawdzić, dając wiele punktów do konkretnego td/TH w dostarczaniu narzędzi programistycznych
Powyższy kod wygląda dobrze, ale muszę podać pseudo selektor :after
tylko do ostatniej kolumny ostatniej kolumny th
i tr
. Jeśli dam do każdego th
i tr
, to układ się zepsuje. a także dots
musi zostać zwiększony, jeśli pusta przestrzeń między tr
i tbody
jest większa. Potem oczywiście można to osiągnąć tylko dynamicznie, czego nie mogę zrobić w moim obecnym projekcie.
PS: Może robię to zupełnie źle. Po prostu dzielę się swoimi wysiłkami, gdy osiągnąłem wynik bardzo bliski rezultatu:.
To jest genialne ... większość rozwiązań wymaga JavaScript lub nie-semantycznych znaczników. Uprzejmie panu dziękuję. –
@GeorgeReith Cieszę się, że mogłem ci pomóc .. witaj :) –