webForumDet fria alternativet

Flera klasser på ett input fält?

HTML & CSS

7 svar · 416 visningar · startad av mattiasnordin

Medlem sedan maj 20012 080 inlägg
Frågan#1
<style type="text/css">
<!--
.myFormClass {
	width: 100%;
	color: blue;
}
.myHeader {
	color: black;
	font-family: verdana; 
	font-size: 10pt;
	font-weight: bold;
}

.MyFormText {
	color: gray;
	font-family: arial; 
	font-size: 8pt;
}
.myReadOnlyForm{
	background-color: eeeeee;
}
-->
</style>

Går det inte att tilldela flera klasser på samma objekt på något sätt? Typ:

<input type="text" name="req_last_info_changed" value="<%=varLastUpdatedDate%>" readonly class="myFormClass; myReadOnlyForm">

Kör jag ovan så är det bara den senaste som visas. Dvs texten blir inte blå.

Medlem sedan juli 20033 147 inlägg
#2

Gör den ena till en class, den som ska finnas på alla input-fält och den andra till id="" vilket betyder att den endast funkar på en av input-fälten.

Medlem sedan juli 20033 147 inlägg
#3
<style type="text/css">

.myFormClass {
	width: 100%;
	color: blue;
}

#myReadOnlyForm {
	background-color: eeeeee;
}

</style>

<input type="text" name="req_last_info_changed" value="<%=varLastUpdatedDate%>" readonly class="myFormClass" id="myReadOnlyForm">

Edit Ni får ursäkta att det blev dubbelpostning, jag skulle egentligen ha redigerat det övre inlägget men råkade istället skapa ett nytt.

Medlem sedan okt. 20023 030 inlägg
#4

Det går att skriva såhär:

<input type="text" name="req_last_info_changed" value="<%=varLastUpdatedDate%>" readonly class="myFormClass myReadOnlyForm">

Men en bugg i IE förhindrar detta från att fungera där också. För att gå runt det kan du kolla på http://dean.edwards.name/IE7. :)

r/ Det ska ju inte vara någon punkt i slutet av adressen. :p

r2/ Buggen gällde visst ett annat problem med dubbla klasser. Den där koden funkar fint i IE också. :r

Medlem sedan feb. 2003774 inlägg
#5

Du kan lösa detta genom att enbart ta bort ; tecknet:
class="myFormClass myReadOnlyForm"

lägg även till # till classen myReadOnlyForm så är det fixat

Funkar utmärkt i IE, Mozilla, Opera etc

Medlem sedan maj 20012 080 inlägg
#6

Vad betyder # enligt ovan ?

Medlem sedan juli 20013 378 inlägg
#7

#enlabel deklarerar ett "id" i CSS och det används t.ex. såhär:

i CSS:

#enlabel {color:red;background:teal;}

...

i HTML

<div id="enlabel">blabla</div>

namnet på ett ID måste vara unikt för hela sidan oavsett vilken tagg det kopplas till.

Man kan även skriva

div#enlabel {...}

men eftersom ID:t ändå måste vara unikt inom sidan så är det kanske lite overkill IMHO ;)

Om du har både klasser och id i samma tagg så gäller CSS-deklarationerna i ID:t över dem i klasserna om du råkar få "kollisioner"

#specialare {color:red;font-weight:bold}
.textutseende {color:black,}
.bakgrund {background-color:yellow}
.fethet {font-weight:normal}

och

<div id="specialare" class="textutseende bakgrund fethet">blablabla</div>

ger alltså röd, fet text på gul bakgrund. ;)

Medlem sedan feb. 2003774 inlägg
#8

Fast det jag syftade med # ovan var till:
.myReadOnlyForm{
background-color: **#**eeeeee;
}

Sen kan man även förkorta detta när varje par består av samma tecken, så ovan kan man även skriva som #eee;

247 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
116 ms — ändringar (db)