Autor | Zpráva | ||
---|---|---|---|
AM_ Profil |
#1 · Zasláno: 23. 7. 2009, 22:41:49
Zdravím,
potřeboval bych udělat něco jako toto: Slovy prostě že určité 2 sloupce v tabulce budou mít půlící čáru na 2 různých místech. Jelikož se tím de facto tvoří tři sloupce, kde vždy budou 2 buňky slité, logické by bylo toto: <table> <tr> <td style="width:50px" colspan="2">a</td> <td>b</td> </tr> <tr> <td style="width:20px">c</td> <td colspan="2">d</td> </tr> </table> Bohužel, výsledek je takový, že browser prostě ten sloupec navíc "ignoruje" a tento kus HTML vykreslí ve 2 sloupcích, jako bych tam žádný colspan neměl. Jasně, šlo by to vyřešit divy místo tabulky nebo tabulku rozdělit a začít novou, mám ale poměrně hodně komplikovanou tabulku pracovního výkazu, kde se buňky různě takto překrývají a nehodí se mi trhat ji na 2 - sladit rozměry druhé části tabulky, které jsou v některých ohledech jiné, ale v některých zase musí sedět, by byla dost otrava. Ptám se tedy, lze nějak docílit tohoto skrz tabulku? řešení typu jednopixelový řádek s rozepsanými buňkami abych to donutil browser vykreslovat správně bych taky raději nechal až nakonec. |
||
Chamurappi Profil |
#2 · Zasláno: 23. 7. 2009, 22:49:05 · Upravil/a: Chamurappi
Reaguji na AM:
„Ptám se tedy, lze nějak docílit tohoto skrz tabulku?“ Přidej řádek, ve kterém budou tři buňky. Aha, nečetl jsem tvoji poslední větu. Jiné řešení není. Ten řádek nemusí být viditelný. |
||
habendorf Profil |
#3 · Zasláno: 23. 7. 2009, 22:50:11
Nevím přesně čeho chceš dosáhnout, ale browser to vykresluje dobře. Když vyhodíš ty šířky, uvidíš to sám.
|
||
habendorf Profil |
#4 · Zasláno: 23. 7. 2009, 22:51:05
Nebo možná hledáš border-collapse, těžko říct. Nevím v čem je problém.
|
||
AM_ Profil |
#5 · Zasláno: 23. 7. 2009, 23:01:31
Chamurappi
asi tedy není zbytí, chtěl jsem vědět, jestli neexistuje "čisté řešení", než tam nacpu řádek navíc. habendorf „Nevím přesně čeho chceš dosáhnout, ale browser to vykresluje dobře“ Tak to je krásné. "Nevím co chceš, ale tohle je dobře." „Když vyhodíš ty šířky, uvidíš to sám.“ Bez těch to bude fungovat dost těžko :) to tomu co chci dává teprva smysl myslím, že tak blbě jsem dotaz nepoložil, máš tu i obrázek |
||
habendorf Profil |
#6 · Zasláno: 23. 7. 2009, 23:30:27
AM:
> „Nevím přesně čeho chceš dosáhnout, ale browser to vykresluje dobře“ > Tak to je krásné. "Nevím co chceš, ale tohle je dobře." Browser vykresluje správně to, co ty jsi nakódoval. Zesměšňující tón si nech na jiné fórum. |
||
Bubák Profil |
#7 · Zasláno: 24. 7. 2009, 00:19:42
Nebude jednodušší poskládat to z DIVů?
|
||
AM_ Profil |
#8 · Zasláno: 24. 7. 2009, 08:38:08
habendorf
„Browser vykresluje správně to, co ty jsi nakódoval.“ Samozřejmě vím, co jsi větou myslel, ale: 1) je mi to naprosto jasné a nevím, jak by mi to mělo pomoct 2) v IT je málo záhadnějších, nevyzpytatelnějších a různorodějších věcí, než vykreslování HTML v různých browserech, a právě v tomto spočíval můj dotaz - jak docílit toho, co chci, když intuitivně napsaný kód nefungoval Nechtěl jsem tě zesměšňovat, jen ti naznačit, že tohle by šlo napsat snad do každého tématu tady, ale jak to komu pomůže? Bubák „Nebude jednodušší poskládat to z DIVů?“ nebude, viz celý úvodní příspěvek Nakonec jsem to vyřešil jak psal Chamurappi (díky) tím skrytým řádkem, ale pořád nechápu, proč to bez toho řádku navíc nemůže fungovat (a nejde to ve všech browserech). |
||
Bubák Profil |
#9 · Zasláno: 24. 7. 2009, 21:00:32
AM_
V tomto případě jsem měl na mysli mít v řádku jednu buňku, vlevo DIV o požadované šířce a vedle něj druhý DIV. Nemusí to být nutně DIV, jde použít jakýkoliv vhodný element (třeba SPAN...), protože je floatovaný, bude se chovat jako blokový. <style type="text/css"> table {border-collapse: collapse; width: 80px;} td {padding: 0; margin: 0; border:2px solid #000} table div, table span { float: left; padding: 0px 2px;} ..okraj {border-right: 2px solid #000;} </style> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td style="background: #00f;"> <div class="okraj" style="background: #ff0; width: 50px;">a</div> <div>b</div> </td> </tr> <tr> <td style="background: #0f0;"> <div class="okraj" style="background: #f00; width: 20px;">c</div> <div>d</div> </td> </tr> </table> „intuitivně napsaný kód nefungoval“ Rozměry buněk nejsou zrovna intuitivní záležitost, taky jsem si myslel, že to musí fungovat. |
||
Časová prodleva: 3 dny
|
|||
AM_ Profil |
#10 · Zasláno: 27. 7. 2009, 20:28:05
Bubák
Jo, to je fakt tohle by šlo :) že mě to nenapadlo dřív, nedělat přes DIVy celou tabulku, ale jen kritickou část... |
||
Časová prodleva: 15 let
|
0