Autor Zpráva
Majkelju
Profil
Zdravím!
Potřeboval bych v tabulce, která má pevně nastavenou šířku sloupců, zařídit, aby text, který se nevejde do buňky, se nejen nezalomil, ale navíc se mu zmenšila velikost písma tak, aby se do buňky vešel... Jde to nějak udělat?
panther
Profil
Majkelju:
CSS umí vynutit nezalomení textu, ale hýbat velikostí textu v závislosti na jeho délce neumí. Možná by to šlo JavaScriptem, ale přijde mi to zbytečné. Proč ti vadí zalomení na dva řádky?
Majkelju
Profil
panther: Tabulku totiž exportuju do pdf přes wkhtmltopdf a ať dělám, co dělám, tak pořád špatně zalamuje tabulku přes stránky...takže mám někde řádek částečně na konci první stránky a částečně na začátku druhé... Tak mě napadlo, že kdyby se mi podařilo mít všechny řádky stejně vysoké, že bych mohl spočítat, kde se stránka zalomí a dát tam nějaké page-break-after... V podstatě ani tak nepotřebuju smrsknout text v buňce, jako zajistit, aby se mi správně zalamovala stránka...Nicméně už dva dny googlím a zkouším všechno možný a stále nic...takže jsem dospěl k závěru, že to půjde jedině nějak takhle...
Už bych to hodil z okna... buď ten převaděč žere kvanta paměti nebo to neumí zalamovat...pořád nějaké problémy :(
JaySee
Profil
Majkelju:
Také nevím, jak donutit tabulku chovat se tak, jak potřebuješ, ale napadla mě jedna věc. předpokládám, že obsah generuješ přes nějaký script, tedy nejspíš PHP. Tak by se dalo na ty problémové buňky nasadit podmínku, kdy řádek delší než cca 20 znaků bude mít jinou třídu v CSS s menším rozměrem, nebo letter-spacingem, nebo něco takového.
Šlo by?
Majkelju
Profil
JaySee: Zajímavý nápad, zkusím. Napadlo mě ještě nějak zjišťovat výšku řádku, sčítat a po určité hodnotě zalomit, založil jsem k tomu téma, protože nevím, jak a jestli vůbec by se to dalo, ale dali mi to k ledu jako duplicitu... Přitom jsem tam zmenšování textu vůbec neřešil, protože jsem ten nápad zavrh s tím, že na to nemám zkušenosti :/ Ale zkusím tvoji myšlenku ;)
EDIT: Není to sice moc elegantní řešení, ale dělá to, co potřebuju :) Díky ;)
JaySee
Profil
Majkelju:
Tak jestli Ti to funguje, tak jsi vyhrál bitvu :-D A to, že naše moderní technologie, se kterými stále válčíme, nedělají to co chceme, neznamená, že to děláme špatně :-D

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: