2011-06-01 1 views
31

Je suis maintenant encore tôt, mais je sais aussi que vous êtes au top.Comment pouvez-vous masquer la flèche qui est affichée par défaut sur l'élément HTML5 <details> dans Chrome?

Je veux utiliser le HTML5 details element:

<details> 
<summary>What's the HTML5 details element?</summary> 
<p>The details element represents a disclosure widget from which the user can obtain additional information or controls.</p> 
</details> 

A ce jour, la bêta Chrome 12 est le seul navigateur pour donner réellement la fonctionnalité des éléments de détails (en cliquant sur résumé permet de basculer le contenu des détails). Donc, pour répondre à la question suivante, vous voudrez probablement utiliser ce navigateur.

Savez-vous comment vous pouvez masquer la flèche qui est affichée par défaut sur un élément de détails dans Chrome?

Il est un peu comme le style par défaut de <input type="search" /> dans WebKit (voir http://css-tricks.com/webkit-html5-search-inputs/). Vous pouvez le changer mais ce n'est pas si évident.

EDIT

Essayé le code CSS suivant sans succès:

details, 
details summary { 
padding-left:0; 
background-image:none; 
-webkit-appearance:none; 
} 

Il y a probablement une chance que nous aurons besoin de le cibler avec un certain sélecteur de pseudo bizarre comme details::-webkit-details-disclosure-widget ou il n'y a actuellement aucun moyen changer les choses du tout.

En outre, je trouve cela dans the specification:

Le premier récipient est prévu pour contiennent au moins une zone de ligne, et cette boîte de ligne est prévu pour contenir un widget divulgation (généralement un triangle ) , positionné horizontalement dans le capitalisme gauche des détails élément. Ce widget devrait permettre à l'utilisateur de demander que les détails de soient affichés ou masqués.

Répondre

43

Je n'avais pas l'intention de répondre à ma propre question mais j'ai la solution.

détails résumé :: - Webkit détails marqueur { display: none; }

Notez que le widget de divulgation sera toujours affiché si vous ne fournissez pas un élément de résumé, ce qui est autorisé par la spécification.

+2

Le seul problème que je vois est que cela ne fonctionnera pas avec le navigateur quand les autres commenceront à supporter

' – Supuhstar

+0

Quand ils le feront, ils ajouteront probablement leur propre version préfixée, un peu comme avec le style actuel d'un espace réservé en entrée. – DADU

+0

Avait un problème d'affichage wierd impliquant le triangle stupide et les outils de développement de chrome ne m'ont pas montré le sélecteur pour cette chose. Merci! –

9

Je ne sais pas si cela va fonctionner, étant donné que mon ordinateur actuel ne fonctionnera pas Chrome et je n'ai pas accès à l'ordinateur que j'utilise normalement, mais essayez d'ajouter ceci à votre fichier css:

details > summary:first-of-type { 
    list-style-type: none; 
} 

Dites-moi si cela fonctionne, je l'ai seulement vu dans une recommandation, pas une spécification officielle.

+1

Merci! Celui-ci ne fonctionne pas pour Chrome. – DADU

+2

Cela fonctionne pour Firefox, mais pour soutenir Chrome cela est également nécessaire: http://stackoverflow.com/a/6202729/1293492 Ces 2 réponses doivent être fusionnées. –

-1

résumé :: - Webkit détails marqueur { font-size:0px }

+1

Utiliser l'affichage: aucun. –

4

Je trouve cela fonctionne assez bien.

:: - webkit-détails-marqueur {affichage: aucun; }

Questions connexes