Moi!
Idea saada table jossa kaikki kentät ovat saman mittaisia ilman että määrittää sille pikseli tai prosentuaalisen koon vaan koko määräytisi sisällö perusteella. Esimerkiksi jos tablessa on omissa sarakkeissa kissa, koira ja hevonen. Kun hevonen on näistä pisin sanana määräytyisi td- kentän kooksi tämä. Miten tehdään
Table jossa kaikki kentät samanmittaisia
5
364
Vastaukset
- qwerfgt4
Lisäät kenttiin divin jossa sisältö. Lisäät myös toisen divin jonka leveys on 1px ja korkeus haluamasi (esim. 25 px) ja kolmannen divin jonka korkeus on 1px ja leveys haluamasi (esim. 25 px).
< td >
< div id="content" >Heppa< /div > < /div >
< /td >
< td >
< div id="content" >Kissa< /div > < /div >
< /td >- gfghghjhjkjfdgdggf
kahta samaa id elementtiä ei voi käyttää..
Mutta class määritettä voi olla... - qwerfgt4
gfghghjhjkjfdgdggf kirjoitti:
kahta samaa id elementtiä ei voi käyttää..
Mutta class määritettä voi olla...No, sepä oli muutenkin perseestä.
< td >
< div class="content" >< div class="sep1" >Heppa< div class="sep2" >< /div > < /div >
< /td >
< td >
< div class="content" >< div class="sep1" >Kissa< div class="sep2" >< /div > < /div >
< /td > - qwerfgt4
qwerfgt4 kirjoitti:
No, sepä oli muutenkin perseestä.
< td >
< div class="content" >< div class="sep1" >Heppa< div class="sep2" >< /div > < /div >
< /td >
< td >
< div class="content" >< div class="sep1" >Kissa< div class="sep2" >< /div > < /div >
< /td >saatana...
< td >
< div class="content" >< div class="sep1" >< /div >Heppa< div class="sep2" >< /div > < /div >
< /td >
< td >
< div class="content" >< div class="sep1" >< /div >Kissa< div class="sep2" >< /div > < /div >
< /td > qwerfgt4 kirjoitti:
saatana...
< td >
< div class="content" >< div class="sep1" >< /div >Heppa< div class="sep2" >< /div > < /div >
< /td >
< td >
< div class="content" >< div class="sep1" >< /div >Kissa< div class="sep2" >< /div > < /div >
< /td >Olisi helpompi nähdä, mitä oikein tarkoitat, jos olisit tehnyt esimerkkisivun ja kertonut sen URLin. Toistaiseksi ei oikein näytä siltä, että ehdotuksesi lainkaan vaikuttaisi esitettyyn ongelmaan. Pikselimääräisiä asetuksia haluttiin olla käyttämättä (kuten syytä onkin), mutta kuitenkin tarjoat niitä. Lisäksi lisä-divien käyttö tuntuu aivan aiheettomalta – mitä niillä oletetaan saavutettavan?
CSS:ssä ei ole mahdollisuutta asettaa taulukon rivin soluja samanmittaisiksi halutulla tavalla. Ne voidaan toki asettaa jotakin yksikköä kuten px, % tai em käyttäen, mutta ei sillä tavalla, että leveys olisi sellainen, että juuri riittää kaikille soluille. Sellainen asetus voidaan tehdä taulukon sarakkeelle mutta ei vaakariville.
JavaScriptillä asian voi kuitenkin hoitaa melko helposti. Siinä voi käydä läpi rivin, laskea leveimmän solun leveyden ja asettaa muut sen mukaisiksi. Tätä varten ei aluksi aseteta mitään leveyksiä, vaan annetaan selaimen muotoilla vapaasti. Käytännössä riittää käydä läpi taulukon yksi rivi, jos ei ole käytetty mitään colspan-määritteitä. Voidaan ottaa jokin rivi, vaikkapa ensimmäinen, ja lisätä sen tr-tägiin esimerkiksi id="ekaRivi", ja sitten...
var rivi = document.getElementById("ekaRivi");
var suurinLeveys = 1;
for ( var i = 0; i < rivi.childNodes.length; i ) {
var leveys = rivi.childNodes[i].offsetWidth;
if(leveys > suurinLeveys) { suurinLeveys = leveys; } }
for ( var i = 0; i < rivi.childNodes.length; i ) {
rivi.childNodes[i].style.width = suurinLeveys "px"; }
Tuo kannattaa laittaa sivun loppuun, jotta selain ehtii lukea ja taittaa taulukon.
Tässä CSS:ää on tietenkin vain solujen width-ominaisuuden asettaminen ja sekin tapahtuu JavaScriptissä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Ensitreffit Jenni laukoo viinilasin ääressä suorat sanat Jyrkin aikeista: "Mä sanoin, että älä"
Voi ei… Mitä luulet: kestääkö Jennin ja Jyrkin avioliitto vai päättyykö eroon? Lue lisää: https://www.suomi24.fi/viihde272900Ymmärrän paremmin kuin koskaan
Roikut kädessäni ja vedät puoleesi. Näen kuitenkin tämän kaiken lävitse ja kaikkien takia minun on tehtävä tämä. Päästän332545- 1482274
Hullu liikenteessä?
Mikä hullu pyörii kylillä jos jahti päällä? Näitä tosin kyllä riittää tällä kylällä.542249Niina Lahtinen uudessa elämäntilanteessa - Kotiolot ovat muuttuneet merkittävästi: "Nyt on...!"
Niina, tanssejasi on riemukasta seurata, iso kiitos! Lue Niinan haastattelu: https://www.suomi24.fi/viihde/niina-lahti241870Kun Venäjä on tasannut tilit Ukrainan kanssa, onko Suomi seuraava?
Mitä mieltä olette, onko Suomi seuraava, jonka kanssa Venäjä tasaa tilit? Ja voisiko sitä mitenkään estää? Esimerkiks3911706Ano Turtiainen saa syytteet kansankiihoituksesta
Syytteitä on kolme ja niissä on kyse kirjoituksista, jotka hän on kansanedustaja-aikanaan julkaissut Twitter-tilillään1041652- 3111561
- 1351459
Varokaa! Lunta voi sataa kohta!
Vakava säävaroitus Lumisadevaroitus Satakunta, Uusimaa, Etelä-Karjala, Keski-Suomi, Etelä-Savo, Etelä-Pohjanmaa, Pohjanm131446