2010-10-11 11 views
0

je le code HTML suivant pour les boutons de mise en œuvre technique des portes coulissantes qui ont l'air bien dans tout, mais Safari sur Windows:portes coulissantes boutons HTML dans Safari Win

<button type="submit"> 
    <span>Button</span> 
</button> 

C'est le CSS correspondant:

button { 
    background:url("../images/sprBgBtn.png") no-repeat right -47px; 
    border:0; 
    cursor:pointer; 
    font-weight:bold; 
    height:27px; 
    line-height:27px; 
    overflow:visible; 
    padding:0 26px 0 0; 
    position:relative; 
    text-align:center; 
    text-transform:uppercase; 
    width:auto; 
} 

button::-moz-focus-inner { 
    border: none; /* overrides extra padding in Firefox */ 
    padding:0; 
} 

button span { 
    background:url("../images/sprBgBtn.png") no-repeat left top; 
    display:block; 
    height:27px; 
    line-height:27px; 
    padding:0 0 0 26px; 
    position:relative; 
    white-space:nowrap; 
} 

Si je laisse de côté le code suivant alors la même question apparaîtra dans FFox:

button::-moz-focus-inner { 
    border: none; /* overrides extra padding in Firefox */ 
    padding:0; 
} 

Répondre

0

Il apparaît une réduction de rembourrage droit pour Chrome et Safari résout le problème:

/* Safari and Google Chrome only - fix margins */ 
@media screen and (-webkit-min-device-pixel-ratio:0) { 
    #icis_dashboard .submit_btn, 
    #colorbox .submit_btn 
    { 
     padding:0 23px 0 0;  
     } 

    #icis_dashboard .submit_btn span, 
    #colorbox .submit_btn span { 
     margin-top: -1px; 
    } 
} 
1

ma deviner est ce bouton, étant un élément en ligne par défaut (sauf si vous remplacez sa propriété d'affichage ailleurs dans le code qui n'est pas ici), n'aime probablement pas l'ensemble interne à bloquer, comportement inattendu sur les fenêtres safari (et i ' Supposons d'autres navigateurs webkit, sauf s'il y a quelque chose de particulièrement spécial sur la version Windows de Safari sur la version mac ou sur Google Chrome).

+0

Un bouton est seulement un élément en ligne lorsqu'il est utilisé dans un autre élément en ligne ce qui n'est pas le cas ici. – RyanP13

+0

ok. Savez-vous si cela se produit dans un autre navigateur webkit comme le chrome? Si ce n'est pas le cas, peut-être y a-t-il un correctif incorporé dans une version de webkit plus récente que celle intégrée à votre version de safari? –

0

Cela se produit aussi pour moi sur Safari Win 5.0.3. Ne se produit pas sur Safari Mac 5.0.3 ou Chrome Win/Mac 8+.

Parce qu'il ne ne fonctionne pas sur Safari de Windows Je suis à une perte sur la façon de « pirater » en utilisant des marges négatives ...