Kalle MMedlem sedan mars 20041 936 inlägg Hej!
Har en tabell med 4 rader och 4 kolumner.
Har skapat ett ID för en tabell med följande kod:
#mintabell {
background-color: #CCCCCC;
border: 3px solid #0066FF;{
Jag får bara kantlinjer runt tabellen. Hur får jag även kantlinjer runt alla celler i tabellen? Ska jag skapa ett id för td eller tr?
Tack på förhand!
nej du behöver inte skapa ett id i dina td eller tr:
#mintabell td {
/*vad du vill göra med dina td */
}
#mintabell tr {
/*vad du vill göra med dina td */
}
Kalle MMedlem sedan mars 20041 936 inlägg Ok men du beskriver att jag ska skapa id för td och tr!?
Är alternativet att jag skapar en klass istället för inre delen av tabellen?
Jag har som sagt lagt in linjer och färger på linjerna i table men får det bara på yttre delen av tabellen. Jag vill även att cellerna ska ha en färg på linjerna på just den tabellen.
Danne VMedlem sedan aug. 20068 090 inlägg
Kalle M skrev:
Ok men du beskriver att jag ska skapa id för td och tr!?
Är alternativet att jag skapar en klass istället för inre delen av tabellen?
Jag har som sagt lagt in linjer och färger på linjerna i table men får det bara på yttre delen av tabellen. Jag vill även att cellerna ska ha en färg på linjerna.
Nej, voigtann skriver inte alls att du ska ha ett id för td och tr. Du gör ett id på tabellen (#mintabell).
När det sen står
#mintabell tr
i stilen så betyder det:
"alla tr-taggar som finns inuti elementet som heter #mintabell"
Alltså:
<table id="mintabell"><tr><td></td></tr></table>
Kalle MMedlem sedan mars 20041 936 inlägg Ok.
Jag försöker skriva till tr och td men det händer inget. När jag gör detta så försvinner all formatering av tabellen.
#mintabell {
background-color: #CCCCCC;
border: 2px solid #FF0000;
{
Kalle MMedlem sedan mars 20041 936 inlägg Nu tror jag att det hände något när jag la till td efteråt och formaterade med en linje på 2 px. Nu fick jag dock en dubbellinje på allt. Ska jag skippa formatera #mintabell utan direkt sätta #mintabell td och formatera alltså?
Danne VMedlem sedan aug. 20068 090 inlägg
Kalle M skrev:
Ok.
Jag försöker skriva till tr och td men det händer inget. När jag gör detta så försvinner all formatering av tabellen.
#mintabell {
background-color: #CCCCCC;
border: 2px solid #FF0000;
{
Du blandar nog ihop taggarna. Verkar som om du ska ha en formatering för table-taggen, en för tr-taggarna och en för td-taggarna, dvs sammanlagt tre stilar:
#mintabell { bla bla bla }
#mintabell td {bla bla bla}
#mintabell tr {bla bla bla }
och i html-koden:
<table id="mintabell"><tr><td></td></tr></table>
#mintabell {
border: 1px solid #000;
}
#mintabell td { /* alla td i id mintabell */
background-color:#0f0;
}
#mintabell td.bob { /* inne i id mintabell måste ha en td med klassen bob för att träffa */
background-color:#f00;
}
#mintabell tr {
/*vad du vill göra med dina td */
}
.bob { /* Kan användas på alla taggar i ditt dokument */
background-color:#ff0;
}
span.bob { /* Måste vara en span med klassen bob för att detta skall träffas */
background-color:#00f;
}
<table id="mintabell">
<tr>
<td class="bob">Denna td har en klass som heter "bob"</td>
<td>Orginal td för idt "mintabell"</td>
</tr>
</table>
<div class="bob">denna bob klass har inget med tabellen #mintabell klass bob att göra</div>
<span class="bob">specifik för span med klassen bob.</span>
här är lite saker man kan göra för att ha samma namn på klasser men att dom bete sig lite annolunda beroende på var för taggar som finns i ditt dokument. Spara och testa att ändra för att se vad som händer. Dåligt skrivit men testa och lek för att se skillnader mm
Kalle MMedlem sedan mars 20041 936 inlägg Japp.
Tackar så mkt!
Tror jag fick till det när jag satte #mintabell td och blå linjefärg. Dock verkar jag inte behöva tr.
Tycker det är lite oklart vad skillnaden är på td och tr i detta fallet!?
tr = table row.
td = Table data cell.
för att få en cell så måste du ju ha en rad ;) tänk dig excel :)
och nej.. du behöver inte ha tr i din stylesheet. Du styla så mycket / så lite du vill själv.
haiderMedlem sedan jan. 2003956 inlägg Jag klämmer in ännu en CSS och tabellfråga
http://www.sitepoint.com/article/background-colors-javascript
Kan man göra något sådant med ren CSS, alltså utan att ta till javascript? Skälet är att jag har ett perlskript som genererar ett antal tabellrader. Det enda som scriptet kan generera åt mig är serienummer, det vill säga artikel 1, 2, 3 osv beroende på hur många artiklar den ska rita ut.
Kanske det hjälper?
Det jag funderade på var att i förväg lista upp tex 10 styck css classer med nummer i sig, alltså att jag i förväg definierar vad rad1 ska ha för färg, rad2 osv osv.
Men jag hoppas att det finns andra förslag så jag får mer perspektiv på möjligheterna.
stevenetMedlem sedan juni 20001 251 inlägg Det lättaste vore att definiera class i perlskriptet?
zcorpanMedlem sedan dec. 20042 245 inlägg
haider skrev:
Jag klämmer in ännu en CSS och tabellfråga
http://www.sitepoint.com/article/background-colors-javascript
Kan man göra något sådant med ren CSS, alltså utan att ta till javascript?
tr:nth-child(odd) { background:silver }
haiderMedlem sedan jan. 2003956 inlägg
zcorpan skrev:
tr:nth-child(odd) { background:silver }
innebär den här css-snutten att den kommer att tillämpa background på udda rader?
Vad måste tr:en heta för att css:en ska assignas till den. Eller är det table-taggen som måste specas så att dess tr får denna css?
haiderMedlem sedan jan. 2003956 inlägg Förresten Simon,
ditt exempel tycks avse td:na inne i en tr.
Jag vill att tr:en ska ha olika färger.
Eller är det jag som har förstått det fel?
Du kan sätta class/id på tabellen tycker jag.
<table id="my-Table">
<tr>
<td>hej</td>
</tr>
<tr>
<td>hej2</td>
</tr>
</table>
css:
table.my-table tr:nth-child(odd) { background: silver; }
Eller om du vill att den ska göra på samtliga tabeller på din sida så struntar du att köra klass/id.
Danne VMedlem sedan aug. 20068 090 inlägg Jag vet inte hur många webbläsare som bryr sig om pseudoklassen :nth-child() egentligen. W3C håller väl fortfarande på att utvecklar det där, eller?
http://www.w3.org/TR/css3-selectors/#nth-child-pseudo
zcorpanMedlem sedan dec. 20042 245 inlägg Funkar i Opera 9.50... ;)
haider: det är tr som får olika färg.
haiderMedlem sedan jan. 2003956 inlägg Jag har en känsla av att detta inte är en bra lösning med tanke på att äldre browsers inte stödjer klassen.
Att definiera classen i perl är inte möjligt, eftersom den tar en kodsnutt, tex:
<!--foreach:start:type-->
<tr bgcolor="#DEE1E8">
<td width="10"><input type="radio" name="delivery" value="<!--value:code-->" /><!--value:checked-->
></td>
<td width="440"><font face="Verdana, Arial, Helvetica" size="1">
<!--value:type-->
(
<!--value:cost-->
kr)</font></td>
</tr>
<!--foreach:end:type-->
och upprepar allt mellan foreach.
Jag har som sagt en möjlighet att använda mig av en parameter som numrerar antalet upprepningar.
Detta nummer hade jag kunnat koda in i ett klassnamn, tex class="tabell<parameter>".
I slutresultatet kommer jag att ha en tabell som har ett antal unika klasser.
Med min ringa kunskap är detta enda sättet.
Har någon ett annat förslag? Jag tänker främst på att det kan finnas saker jag inte ens har hört talas om som jag kan ta in och använda.
stevenetMedlem sedan juni 20001 251 inlägg Klart det går att lösa i perl, ovanstående ser ju som någon form av templatesystem, hur ser koden ut som genererar loopen ifrån databasen?