2012-03-01 12 views
21

Mam table, którego komórki są wypełnione obrazkami. Chciałbym, aby obrazy się powiększyły, gdy najedziesz na nie kursorem i chciałbym, aby komórki stołu pozostały w tym samym rozmiarze.Jak zatrzymać zmianę rozmiaru tabeli podczas wzrostu zawartości?

Zmiana stylu img na position:relative nie działa. Zmiana na position:absolute działa, ale nie znam bezwzględnej pozycji obrazów.

Czy istnieje eleganckie rozwiązanie tego problemu za pomocą CSS? Wolałbym nie używać żadnego JavaScriptu.

+0

używam Firefoksa, a obrazy nie są skupione w komórce przy aktywowaniu. Lewy górny róg obrazu pasuje do lewego górnego rogu komórki. Którego zachowania szukasz? – approxiblue

Odpowiedz

52

Zastosowanie style="table-layout:fixed;", ale uczyni to tekst lub obrazy pokrywają się z innymi kolumnami w przypadku przekraczać szerokości. Nie umieszczaj długich fraz tekstowych bez spacji.

+0

używanie div wewnątrz kolumn i przepełnienie ustawień: auto; poradziłby sobie z wspomnianą obawą, na temat nakładania się. dobrze? –

+0

Aby zapobiec nakładaniu się zawartości kolumny, można dodatkowo skorzystać z funkcji przepełnienia tekstu: elipsa, która zapewnia w połączeniu z przepełnieniem: ukryte niepowiązanie zawartości cuttet z kropkami ... notacja przyrostka: .myTable {table-layout: fixed; } .myTable td {text-overflow: ellipsis; overflow-x: hidden;} – Ruwen

10

Użyj tabeli table-layout: fixed i pewnej stałej szerokości dla samej tabeli i/lub jej komórek.

1

Możesz zrobić, aby użyć pozycji, z-index, left, top.

należy spojrzeć w ten sposób,

http://jsfiddle.net/wWTfs/

+0

Działa to w jsfiddle, ale nie w Firefoksie ani w Chrome ... WTH? – Maarten

+0

Próbowałem w chrome i IE. To działa. Ale Firefox jest problemem. Możesz użyć ** # images tr td {display: inline-block;} ** dla FireFox. To jest błąd. Dysk z przeglądarki Firefox. – sinanakyazici

+0

Łącze do obrazu na skrzypcach jest zepsute. –

Powiązane problemy