Voir cet exemple de code : http://jsfiddle.net/Z2BMK/
Chrome/IE8 ressemble à ceci
Firefox ressemble à ceci
Mon CSS est
button {
padding:0;
background:#080;
color:white;
border:solid 2px;
border-color: #0c0 #030 #030 #0c0;
margin:0;
}
Comment puis-je modifier l'exemple de code pour que le bouton soit le même dans les deux navigateurs ? Je ne veux pas utiliser d'hyperliens basés sur JavaScript car ils ne fonctionnent pas avec la barre d'espacement du clavier et il faut que le bouton ait un numéro d'identification. href
URL, ce qui n'est pas une façon propre de gérer les choses.
Ma solution, depuis Firefox 13
button::-moz-focus-inner { margin: -1px; padding: 0; border-width: 1px; }
0 votes
Pourquoi avez-vous ajouté
margin: -1px
? Est-il lié d'une manière ou d'une autre àborder: 2px
?1 votes
Voir mon édition. Le site
border-width
de la-moz-focus-inner
était1px
par défaut, de sorte que l'écritureborder-width
dans le code est redondant, mais il rend plus clair ce qui se passe. Il est possible que cela puisse également contribuer à l'avenir. Pour répondre à votre question, leborder-width
dans Firefox était la cause de la différence, et l'ajout demargin: -1px
est la solution qui est plus compatible que ma solution précédente.1 votes
Je pense que la réponse acceptée est visuellement équivalente, mais meilleure que votre solution. La réponse acceptée supprime les éléments ajoutés par FF, et rend les choses identiques dans tous les navigateurs. Votre solution laisse une bordure supplémentaire ajoutée par FF à sa place, et cache un pixel de la bordure de deux pixels à l'aide de la fonction
margin: -1px
. C'est trop compliqué. Ça casse si : 1)Un bug dans le moteur de rendu apparaît (ça arrive), 2)Les bordures ont une couleur différente, 3)Vous faites un zoom avant. Pour démontrer les problèmes potentiels de votre solution, j'ai préparé un bidule : jsfiddle.net/Z2BMK/455 . Faites un zoom et remarquez l'apparition d'une bordure rouge.0 votes
Le seul avantage de votre réponse que je vois est de préserver la fonctionnalité de FF "contour en pointillé lorsque le bouton est actif".
0 votes
Oui, c'est exactement ce qui rend ma solution meilleure. Il devrait y avoir quelque chose qui indique à l'utilisateur où se trouve son clavier.
0 votes
Gardez à l'esprit que votre bidouille n'est pas la même que ma solution. Voici un bidule qui démontre ma solution mieux. Le problème du zoom ne s'applique pas. J'admets que ma solution n'est peut-être pas à l'épreuve du temps, mais je suis prêt à parier qu'elle le sera.
0 votes
Toujours un problème en 2014 - et toujours très utile, merci ! J'ajouterai qu'il peut être nécessaire de réduire également le nombre d'heures de travail de l'utilisateur.
line-height
du bouton, s'il ne contient rien d'autre qu'une image.