webForumDet fria alternativet

Disabled och style på <option>

HTML & CSSur HTML, XHTML & CSS

6 svar · 520 visningar · startad av MickeA.com

Medlem sedan feb. 20034 441 inlägg
Frågan#1

Hej,

Jag skriver ut en dropdown med div. innehåll.
Vissa items är rubriker och här går det inte att använda <optgroup>, så istället har jag gjort såhär:

<select>
<option selected="selected" value="Group">Select a game</option>
<option value="Group" [b]style="font-weight: bold;" disabled="disabled"[/b]>Grupp 1</option>
<option value="52" Class="gamemenu-item">Item 1</option>
<option value="47" Class="gamemenu-item">Item 2</option>
</select>

Det funkar hur bra som helst i Firefox och Opera, men Explorer struntar i både style och disabled.

Vad kan det bero på?
Stöder inte IE det här?

Medlem sedan feb. 20034 441 inlägg
#2

Har googlat lite på det här och det verkar helt enkelt inte finnas något stöd för disabled eller style i Explorer, helt sjukt...

Medlem sedan aug. 20039 342 inlägg
#3

I alla browsers kan du...

  • Sätta color och background-color för enskilda element. Endast i FF kan du sätta font-family, font-weight och liknande för enskilda element. (Alltså varken i IE eller Opera) Alltså, använd color och background-color istället.

  • Sätta font-family osv för hela listan.

  • Och om du behöver disabla en option för att du vill använda den kategori-indikator, mså finns det faktiskt ett element för det, nömligen optgroup.

    <select name="produkter">
        <optgroup label="Skruv">
            <option value="skruvm2" >M2</option>
            <option value="skruvm3" >M3</option>
            <option value="skruvm4" >M4</option>
        </optgroup>
        <optgroup label="Mutter">
            <option value="mutterm2" >M2</option>
            <option value="mutterm3" >M3</option>
            <option value="mutterm4" >M4</option>
        </optgroup>
    </select>
    

    Exakt hur optgroup visas beror på webbläsare. IE och FF visar den som fet, kursiv text, Opera visar den med inverterade färger. optgroup-titeln står iaf ut från de andra valen oavsett läsare, och är inte valbar.

Medlem sedan feb. 20034 441 inlägg
#4

Tack tack, optgroup vet jag om och helst hade jag velat använda det.
Problemet är att listan skrivs ut genom objektet listItem i C# och optgroup stöds inte där.

Blev lite konfunderad när inte font-weight funkade i IE, men jag gör så att jag sätter annan textfärg samt background på kategorierna.

Jag hade även velat flytta mina items i sidled, men padding stöds in i IE och det går inte att använda  , koden skrivs ut som sin entity.

Kör jag med " " så trimmas det bort...typiskt...

Tack!

Medlem sedan aug. 20039 342 inlägg
#5

Kolla sista svaret på följande sida: http://www.experts-exchange.com/Programming/Languages/C_Sharp/Q_21964232.html
Visserligen är koden gjord för VB.net, inte C#, men jag gissar att samma princip med HtmlGenericControl kan användas rakt av.

Vad gäller   så verkar det på din beskrivning som C# tolkar strängen du ger till funktionen som den sträng som ska synas på skärmen. Det kan du utnyttja till din fördel. Lägg in escape-koden för "No-break space", \xA0 där du behöver. Då bör mellanrummen skrivas ut rätt.

Läxa till nästa gång, googla mer innan du ställer en fråga. ;)

Medlem sedan feb. 20034 441 inlägg
#6

Grymt! funkade fint med \xA0.
Jag har fått till det nästan som jag vill nu med rubriker.

Tack!

Medlem sedan aug. 20039 342 inlägg
#7

Som sagt, pröva tricket med HtmlGenericControl. Det kan inte mer än itne funka. ;)

132 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)