- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy A54 - türelemjáték
- Xiaomi Watch 2 Pro - oké, Google, itt vagyunk mi is
- Magisk
- Középkategóriást mutatott be újra az Oppo
- Keretmentesít a Galaxy S25 FE
- Milyen okostelefont vegyek?
- VoLTE/VoWiFi
- Honor Magic5 Pro - kamerák bűvöletében
- Apple Watch
Új hozzászólás Aktív témák
-
-
martonx
veterán
2-esre egy lehetséges megoldás? https://jsfiddle.net/m2x7wt6e/1/
-
T J
tag
Nem tudom, h megoldható-e CSS-ben amit szeretnél: CSS - Use calc() to keep widths of elements the same
Dinamikusan lehet, hogy csak js-el fog menni, illetve bele lehet erőszakolni a js-t css-be, de az nem tiszta css, illetve lehet js-ben is használni css-t, de akkor nem minden stílus lesz a css fájlben egy helyen.
width: calc(...) -al is lehet számolni, de csak az őt tartalmazó elem szélességéből. Másik vele egyenrangú társelem szélessége csak fix értékként szerepelhet a képletben. Pl:
.td3 {width: calc( 100% - 200px ); } ahol 100% az a td3-at tartalmazó tr szélessége, a 200px pedig a sorban levő többi elemé (td1, td2) marginnal, borderrel együtt.
Szóval ha ismered minden oszlopban a leghosszabb elem méretét, akkor érdemes az adott osztályú elemeknek min-width-ként megadni, és az ismeretlen szélességű mezőét a calc()-al megadni, kitöltve így a maradék helyet.
De az inputnál nem tudod előre hogy nem az lesz-e a leghosszabb mező, amit épp be fog írni a user. Így vagy maximálod a beírható karakterek számát, vagy minden beírt karakter után lefuttatsz js-el egy ciklust, amiben összehasonlítod, hogy a beírt szöveg hosszabb-e, mint a már meglévő leghosszabb szöveg az oszlopban, vagy a megadott szélességnél. És ha hosszabb, akkor növeled a cella és táblázat szélességét minden egyes beírt karakternél. De ez sok felesleges számítás, és ha betöltéskor is így állapítod meg a szélességet, min-width helyett, akkor lassabban fog betöltődni az oldalad.Ezen kívül nem illik egy tr-be th-t és td-t is tenni, csak az egyiket. És div-et se erőltetném bele td-be, mert rontja a táblázatod formázhatóságát. Inkább használj div helyett <span>-t.
-
martonx
veterán
"Persze lehet tippelni a betűk számából, eddig is ezt csináltam, de pont ezért keresek CSS megoldást, hogy ne kelljen."
De érted, olyan megoldás nem létezik, ami egységesen jó 20 karakterre is, meg 500-ra is. Lehetőségeid: min-width használata vagy le tudod csapni a túl hosszú szövegek végeit "..."-ra (tooltipként meg mondjuk kitenni a teljes szöveget), vagy be tudod törni a túl hosszú szövegeket (ez az, ami most nem tetszik neked). Neked kell kitalálnod, hogy mi a jó neked. Ami biztos nem jó, hogy karakterenként számolgatsz bármit.A második problémád meg az alapján a jsfiddle alapján sajnos még mindig nem világos. Nem lehetne olyan jsfiddle-t csinálnod, ahol látszódik is a probléma?
-
Új hozzászólás Aktív témák
Hirdetés
- Csere-Beszámítás! Sapphire Pure RX 7900XT 20GB Videokártya! Bemutató darab!
- Xiaomi Redmi Note 10 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Lenovo ThinkPad dokkolók: USB-C 40A9/ 40AY/ 40AS/ Thunderbolt 3 40AC/ Hybrid USB-C DisplayLink 40AF
- Wacom Cintiq DTK-2260 - Digitális rajztábla
- ÁRGARANCIA!Épített KomPhone i3 10105F 8/16/32GB RAM RX 6500 XT 4GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest