11
votes

HTML Sélectionnez Elément avec une largeur fixe et des barres de défilement

Ceci est probablement une question de base CSS, mais je ne parle pas par couramment CSS et semble juste aller dans des cercles.

Voici ce que j'ai en anglais: j'ai une largeur fixe sélectionnée de 400px. Le texte de chacune des options ne correspond pas à cette largeur de 400px. Je ne reçois pas une barre de défilement horizontale, il suffit de couper le texte. Comment puis-je obtenir la barre de défilement? P>

Voici ce que j'ai dans HTML / CSS: P>

<div>
  <select style="width=400px">
    <option>this text is too wide to fit and gets cut off.....</option>
    ...
  </select>
</div>


0 commentaires

3 Réponses :


3
votes
  1. Il devrait être (non " largeur = ") "
  2. Un HTML-Select régulier n'a pas de barre de défilement, peu importe ce que vous faites :)

2 commentaires

2.A Select n'a pas de barre de défilement, quel que soit ce que vous faites :) - alors comment gérez-vous plusieurs sélections?


@Andy pas de foire, Sélectionner plusieurs est une bête différente :)



18
votes

Les éléments de formulaire sont notoirement difficiles à styles.

Pour votre réglage de largeur, vous avez une petite faute de frappe. Vous avez besoin xxx

sinon, je pense que les barres de défilement horizontales ne peuvent pas être atteintes à l'aide d'un élément normal SELECT . Vous devriez avoir recours à une alternative basée sur JavaScript comme SexyCombo , qui peut être personnalisable d'avoir une barre de défilement. Plus d'options ici: 11 plugins JQuery Pour améliorer les déposées HTML


4 commentaires

Désolé, la "largeur =" est une faute de frappe et n'est pas dans mon code actuel. Est-il possible de rendre la sélection vraiment grosse pour correspondre à tout le texte et de faire la division d'une largeur / hauteur fixe qui a des barres de défilement?


@ schmimd04 qui devrait être possible en donnant à l'environnement div une taille fixe et débordement: auto; Cependant, il apportera des problèmes supplémentaires, tels que le bouton fléchant étant caché également. Mais essayez-le.


Il suffit de ne pas donner la sélection de «largeur» et elle sera aussi grande que l'option la plus longue. Ensuite, entourez le SELECT avec un DIV que par ex. a '"largeur: 400px; Overflow: auto;"'


Il y a en effet une solution très simple à cela. Checkout Ce Fiddle



0
votes

Vous utilisez la syntaxe CSS en ligne vous devez utiliser style = "largeur: 400px;"

et Si vous utilisez plusieurs sélection, vous utilisez simplement P>

<select multiple style="width: 400px;">


0 commentaires