# Breite von Selectboxinhalten anpassen



## stathis2000 (17. Juli 2006)

Ich habe ein IE-Problem. Ich will Selectboxen mit einer festen Breite darstellen, habe mir gedacht, ok wird schon klappen mit CSS width: 55px z.b.

Auf Firefox klappt es auch, zeigt die aufklappenden Werte wunderbar in der Breite des längsten Eintrages an, doch der IE schneidet schlauerweise auch die aufklappenden Werte auf die 55px. 

Hier mal ein Codebeispiel zum verdeutlichen:

```
<select name="select4" style="width:55px ">
  <option selected class="even">(Alle)</option>
  <option>aufsteigend</option>
  <option>absteigend</option>
  <option>Top 10</option>
  <option>Benutzerdefiniert</option>
  <option>00</option>
  <option>01</option>
  <option>02</option>
  <option>03</option>
  <option>04</option>
</select>
```
Hoffe mir kann jemand weiterhelfen...

Grüsse
Stathis


----------



## Maik (17. Juli 2006)

Mir ist hierfür keine Lösung bekannt, außer die Elementbreite entsprechend zu erhöhen.


----------



## Gumbo (17. Juli 2006)

Wieso bestehst du auf einer festen Breite des Elements und lässt nicht einfach den Browser entscheiden? Denn nicht jeder ist mit einem Windows-XP-PC mit Internet Explorer unterwegs.


----------



## darksmilie (17. Juli 2006)

Du kannst dies nur über ein style festlegen


```
<select name="foo" style="width:118;">
```


----------



## Maik (17. Juli 2006)

@darksmilie: den Vorschlag (mit einer höheren Breitenangabe) habe ich doch schon genannt.


----------



## stathis2000 (17. Juli 2006)

Gumbo hat gesagt.:
			
		

> Wieso bestehst du auf einer festen Breite des Elements und lässt nicht einfach den Browser entscheiden? Denn nicht jeder ist mit einem Windows-XP-PC mit Internet Explorer unterwegs.



Weil ich nun mal enge Selectboxfelder brauche für ein Menü. Siehe rechts das Menü... http://www.language-schools-in-spain.com/learn-spanish-valencia.htm

auf dem Firefox funktioniert es, aber beim IE schneidet er mir die Optionen ab. Gibt es da keine Möglichkeit?


----------



## Maik (17. Juli 2006)

Du hast zwei Möglichkeiten: entweder verzichtest du auf die Breitenangabe, und der Browser ermittelt die Breite anhand des Inhalts, oder du erhöhst den Wert für die Elementbreite.


----------



## stathis2000 (17. Juli 2006)

Es muss eine Möglichkeit geben, ich habe es bei einer anderen Seite gesehen. Kann mich aber nicht mehr erinnern wo.... 

Ich bin mittlerweile auf diese Möglichkeit gestossen:
 css: 

```
div { 
   width: 200px; /* breite dem layout anpassen */ 
   height: 23px; 
   margin: auto; 
   overflow: hidden; 
   background-color; transparent; 
   border-width: 1px; 
   border-style: solid; 
   border-color: #FF0000; 
} 
select {  
   width: 500px; /* breite dem text anpassen */ 
   height: 25px; 
   position: relative; 
}
```
 html:

```
<div> 
   <select name="Grossstadt" size="1">     
   <option value="0" selected>••• Bitte ins Feld klicken •••</option>     
   <option value="auswahl1">kurze auswahl</option>    
   <option value="auswahl2">suuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuperlange auswahl</option>     
   </select> 
</div>
```
Währe dann halt keine Selectbox mehr. Aber wenn nichts mehr von diesem Forum kommt, dann wird mir wohl nichts mehr übrig bleiben.

Danke für eure Hilfe.

Grüsse
Stathis


----------



## Gumbo (17. Juli 2006)

Probier mal das label-Attribut.


----------



## stathis2000 (18. Juli 2006)

Ich weiss nicht wie mir das weiterhelfen soll?

>Dieses Attribut erlaubt Autoren eine kürzere Beschreibung für eine Option anzugeben als den Inhalt des OPTION-Elements.

Ich brauche keine kürzeren value Werte. Ich möchte, dass das Option-Element vollständig angezeigt wird und nicht wie beim IE mir es abschneidet. Siehe Code im 1. Betrag oben.

Aber danke für den Vorschlag, ist für andere Sachen gut zu wissen.

Grüsse


----------



## Gumbo (18. Juli 2006)

Du verstehst den Sinn des Attributs wohl nicht ganz:
	
	
	



```
<select>
	<option value="Wert" label="kurze Bez.">laaaaange Bezeichnung</option>
</select>
```
Die Browser sollten in diesem Fall „kurze Bez.“ statt „laaaaange Bezeichnung“ anzeigen. OmniWeb macht das beispielsweise so. Ob dies nun auch vom Internet Explorer unterstützt wird, weiß ich allerdings nicht.


----------



## Maik (18. Juli 2006)

Alle mir zur Verfügung stehenden Browser "verweigern" das label-Attribut.

Testumgebung: Win2k, Firefox 1.5.0.4, IE 6.0, Mozilla 1.7.12, Netscape 7.0, Opera 8.50


----------



## stathis2000 (18. Juli 2006)

Gumbo hat gesagt.:
			
		

> Du verstehst den Sinn des Attributs wohl nicht ganz:
> 
> 
> 
> ...



Ich habe es verstanden, aber ich brauche nun mal die lange Bezeichnung als Auswahl für den User.


----------



## Gumbo (18. Juli 2006)

Dann gibt es wohl keine andere Möglichkeit.


----------

