2013-10-24 12 views
15

Ho un elenco a discesa nella mia applicazione in base al quale per centrarlo devo aggiungere padding-top 10px mentre su Mozilla Firefox ma su google chrome non ha bisogno del padding. Come posso scegliere come target l'elenco di selezione per impostare questo browser specifico. Speravo di poter fare qualcosa del tipo:Padding CSS specifico del browser per il campo firefox

select { 
    -moz-padding-top: 10px; 
    -webkit-padding-top: 0px; 
} 

Qualche idea su come potrei aggirare questo? Fiddle di problema illustrato di seguito, se controlli questo in Chrome e poi Firefox, lo voglio in modo che il testo è sempre in mezzo

http://jsfiddle.net/uHDa6/

+0

imbottitura è universale: P ... se ne avete bisogno in Firefox, ma non in cromo il problema è con un altro elemento o proprietà si prega di fornire un codice o violino – DaniP

+0

violino aggiunto a mettere in discussione – Jay

+3

+1 per il problema. Adoro una sfida. Ma la volta successiva, descrivi il _problem_ (ad esempio, firefox si allinea in modo diverso verticalmente e 'vertical-align' non fa nulla), non come tu stai tentando di hackerarlo. –

risposta

30

La risposta alla tua domanda è: sì, è possibile mettere Mozilla- CSS specifico in un foglio di stile. (Non in un attributo stile in linea.)
In questo caso, si può scrivere

@-moz-document url-prefix() { 
    select {padding-top:10px;} 
} 

che è semplicemente la versione di Mozilla-prefisso della regola @document, che non è riconosciuto da altri browser.

Tuttavia, la soluzione effettiva al problema della posizione del testo non corrispondente è di non impostare l'altezza, ma solo il riempimento della selezione. Niente hack

style="font-size: 14px; padding: 11px 0 11px 5px;" 

Che ha l'effetto desiderato in tutti i browser. Vedi new fiddle.

+0

Grazie Lister è stato in grado di risolvere solo l'imbottitura che avevo provato, ma a causa dell'altezza che si stava regolando stava facendo casino così tanto. – Jay

+0

Questo era esattamente ciò di cui avevo bisogno per risolvere un problema simile. Firefox mostra il carattere Arial leggermente più stretto di Chrome e IE, quindi per mantenere la corretta larghezza del menu ho dovuto aggiungere padding personalizzato a Firefox. Questo ha fatto il trucco. Grazie! – DiMono

Problemi correlati