Próbuję zbudować układ podobny do następującego:
+---+---+---+
| | | |
+---+---+---+
| |
+-----------+
gdzie dno wypełnia przestrzeń górnego rzędu.
Gdyby to był prawdziwy stół, mógłbym to łatwo osiągnąć <td colspan="3">
, ale ponieważ tworzę układ podobny do tabeli , nie mogę używać <table>
znaczników. Czy jest to możliwe przy użyciu CSS?
colspan
atrybutuOdpowiedzi:
Nie ma prostego, eleganckiego analogu CSS
colspan
.Wyszukiwania tego właśnie zagadnienia zwrócą różnorodne rozwiązania, które obejmują szereg alternatyw, w tym bezwzględne pozycjonowanie, określanie wielkości, a także podobną różnorodność ostrzeżeń dotyczących konkretnej przeglądarki i okoliczności. Przeczytaj i podejmij najlepszą świadomą decyzję na podstawie tego, co znajdziesz.
źródło
colspan
jest to właściwe narzędzie do pracy. Moja odpowiedź była w 75% słuszna, a twoja w 100% słuszna. Powinieneś wrócić do SO.O ile wiem, w css nie ma colspan, ale
column-span
w niedalekiej przyszłości będzie dostępny układ wielu kolumn, ale ponieważ jest to tylko szkic w CSS3, możesz to sprawdzić tutaj . W każdym razie możesz obejść to za pomocądiv
ispan
z wyświetlaniem podobnym do tabeli.Byłby to HTML:
A to będzie css:
Jedynym powodem, dla którego warto skorzystać z tej sztuczki, jest czerpanie korzyści z
table-layout
zachowania, używam jej dużo, jeśli tylko ustawienie div i rozpiętości rozpiętości do określonego procentu nie spełniło naszych wymagań projektowych.Ale jeśli nie musisz czerpać korzyści z tego
table-layout
zachowania, odpowiedź durilai wystarczyłaby ci.źródło
.span { ...
tego powinno byćspan { ...
.div
tagów do wyświetlania danych tabelarycznych jest równie złe, jak używanietable
s do kontrolowania układu stronyInną sugestią jest użycie Flexboksa zamiast tabel. To oczywiście „nowoczesna przeglądarka”, ale daj spokój, to 2016;)
Przynajmniej może to być alternatywne rozwiązanie dla osób szukających odpowiedzi na to pytanie, ponieważ oryginalny post pochodzi z 2010 roku.
Oto świetny przewodnik: https://css-tricks.com/snippets/css/a-guide-to-flexbox/
źródło
źródło
To nie jest częścią kompetencji CSS.
colspan
opisuje strukturę zawartości strony lub nadaje znaczenie danym w tabeli, która jest zadaniem HTML.źródło
Aby udzielić aktualnej odpowiedzi: Najlepszym sposobem na zrobienie tego dzisiaj jest użycie układu siatki css w następujący sposób:
i HTML
źródło
Możesz spróbować użyć systemu siatki, takiego jak http://960.gs/
Twój kod wyglądałby mniej więcej tak, zakładając, że używasz układu „12 kolumn”:
źródło
Spróbuj dodać
display: table-cell; width: 1%;
do elementu komórki tabeli.Pokaż fragment kodu
źródło
Odniosłem pewien sukces, chociaż działa on w oparciu o kilka właściwości:
table-layout: fixed
border-collapse: separate
oraz „szerokości” komórek, które łatwo dzielą / rozpinają, tj. 4 x komórki o szerokości 25%:
https://jsfiddle.net/sfjw26rb/2/
Ponadto zastosowanie display: table-header-group lub table-footer-group to przydatny sposób przeskakiwania elementów „row” na górę / dół „table”.
źródło
jeśli użyjesz div i span, zajmie on większy rozmiar kodu, gdy wiersz tabeli datagrid będzie miał więcej objętości. Poniższy kod jest sprawdzany we wszystkich przeglądarkach
HTML:
CSS:
źródło
http://www.quackit.com/css/css3/properties/css_column-span.cfm
źródło
table-cell
wiele kolumn tabeli.column-span
służy do sterowania układem kolumn. Pozwala to na przepływ tekstu przez kilka kolumn, tak jak robią to gazety.Jeśli przyjedziesz tutaj, ponieważ musisz włączyć lub wyłączyć
colspan
atrybut (np. W przypadku układu mobilnego):Zduplikuj
<td>
s i pokaż tylko te z pożądanymicolspan
:źródło
Właściwości CSS „liczba kolumn”, „przerwa między kolumnami” i „rozpiętość kolumn” mogą to zrobić w taki sposób, aby wszystkie kolumny pseudo-tabeli znajdowały się w tym samym opakowaniu (HTML pozostaje miły i schludny).
Jedynym zastrzeżeniem jest to, że możesz zdefiniować tylko 1 kolumnę lub wszystkie kolumny, a rozpiętość kolumn nie działa jeszcze w Firefoksie, więc konieczne jest dodanie dodatkowego CSS, aby zapewnić prawidłowe wyświetlanie. https://www.w3schools.com/css/css3_multiple_columns.asp
źródło
Przybyłem tutaj, ponieważ obecnie blok tabeli WordPress nie obsługuje parametru colspan i pomyślałem, że zastąpię go za pomocą CSS. To było moje rozwiązanie, zakładając, że kolumny mają tę samą szerokość:
źródło
Zawsze
position:absolute;
możesz rzeczy i określić szerokości. Nie jest to zbyt płynny sposób, ale zadziałałoby.źródło
Stworzyłem to skrzypce:
http://jsfiddle.net/wo40ev18/3/
HTML
CSS
źródło
Klasy Media Query mogą być używane do osiągnięcia czegoś znośnego dzięki zdublowanym znacznikom. Oto moje podejście do bootstrap:
colspan 1 dla urządzeń mobilnych, colspan 5 dla innych z CSS wykonującymi pracę.
źródło