Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [CSS] display:-moz-inline-block; Come centrare il testo con Firefox?

    Salve. Ho la necessità di centrare il testo in un tag span ridefinito in questo modo:
    codice:
    .css {
    	/* per firefox: */
    	display:-moz-inline-block;
    	display:-moz-inline-box;
    
    	/* per IE: */
    	display:inline-block;
    
    	/* non funziona con firefox: */
    	text-align: center;
    }
    Praticamente in questo modo riesco ad impostare le dimensioni allo span, pur mantenendolo elemento di linea.
    Il problema è Firefox, in quanto la proprietà text-align: center non la digerisce, e mette tutto il testo contenuto in span allineato a sinistra. Conoscete un modo per centrarlo?

  2. #2
    ciao!
    Mozilla sconsiglia di usare un'estensione se esiste già una proprietà supportata dal browser
    . in questo caso il valore 'inline-block' è supportato da FF.

  3. #3
    Originariamente inviato da thomas_anderson
    in questo caso il valore 'inline-block' è supportato da FF.
    A me non risulta
    Prova questo:
    codice:
    	prova <span style="display: inline-block;
    	width: 200px;
    	height: 200px;
    	background-color: #FFFF99;">prova</span> prova
    Con Firefox, per lo meno il 2.0, non funziona proprio se non uso quelle estensioni (mentre con Explorer sì).

  4. #4
    Innanzitutto questo è il bug di Firefox.

    Comunque (in attesa che il bug venga risolto), ho risolto in un altro modo (usando sempre un'estensione di Firefox, purtroppo). Questo è l'HTML:
    codice:
    Flusso del testo <span class="inline_element"><span class="inline_element_text">Testo inline abbastanza lungo</span></span> flusso del testo...
    Purtroppo occorre usare un'ulteriore elemento inline, che a volte può essere inutile (ma se dovete usare STRONG, siete fortunati, perché va bene uguale).
    Il CSS è il seguente; la differenza rispetto a prima è l'estensione utilizzata per Firefox su .inline_element, e .inline_element_text che deve essere reso block (il text align si applica a lui):
    codice:
    .inline_element {
    	background-color:#FFFF99;
    	width: 80px;
    	/*allineamento del blocco rispetto al
    	flusso del testo*/
    	vertical-align: middle;
    	/* cornice che da un effetto di centrato
    	in verticale */
    	padding: 10px;
    
    	/* per Firefox: */
    	display: -moz-inline-stack;
    	/* non funziona su Firefox */
    	display: inline-block;
    }
    
    .inline_element_text {
    	background-color: #FF6600;
    	display: block;
    	text-align: center;
    	width: 80px;
    	
    	/* centrare il testo verticalmente */
    	vertical-align: middle;
    }
    Ho applicato i colori di sfondo solo per evidenziare come si comportano i blocchi. Se volete dare un'altezza ad .inline_element, e centrare verticalmente il testo, basta ridare la stessa altezza a .inline_element_text, e dargli lo stesso valore per il line-height; fate attenzione che il testo non vada a capo, altrimenti:
    1) con IE viene tagliato
    2) con Firefox va a capo, ma, avendo le linee quell'altezza specificata, il blocco occuperà un'esagerazione in verticale...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.