font web tendono a venire suddivisi in file separati per grassetto, corsivo, ecc sto usando un @font-face
dichiarazioni come questo (tagliate fino a WOFF solo per questo esempio):Come imposti stack di font web con più stili?
@font-face {
font-family: 'OpenSans';
src: url("fonts/OpenSans-Regular.woff") format("woff");
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'OpenSansItalic';
src: url("fonts/OpenSans-Italic.woff") format("woff");
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'OpenSansBold';
src: url("fonts/OpenSans-Bold.woff") format("woff");
font-weight: normal;
font-style: normal;
}
E poi ho implementano i vari stili:
body {
font-family: "OpenSans", Helvetica, sans-serif;
}
strong {
font-family: "OpenSansBold", Helvetica, sans-serif;
font-weight: normal; /* Web font is already bold */
}
em {
font-family: "OpenSansItalic", Helvetica, sans-serif;
font-style: normal; /* Web font is already italic */
}
devo ignorare lo stile della UA grassetto/corsivo (le righe di commento di cui sopra). Altrimenti, aggiungerà un aspetto finto-grassetto al testo che è molto brutto.
Se dovessi lasciarlo così, e uno dei file di font web non è stato caricato, il font di fallback non avrebbe lo stile corretto. Ad esempio, questo:
<strong>This text is bold</strong>
visualizzerebbe come Helvetica normale se OpenSans-Bold.woff
è riuscito a caricare, ma voglio che sia Helvetica grassetto.
Come ci si assicura che i caratteri di fallback abbiano lo stile corretto in grassetto/corsivo/regolare?
Perfetto, grazie. Il pezzo mancante stava effettivamente usando lo stesso valore 'font-family' per tutte le regole' @ font-face'. – craigpatik
Leggi la fine di questo articolo prima di andare con questa soluzione: http://www.456bereastreet.com/archive/201012/font-face_tip_define_font-weight_and_font-style_to_keep_your_css_simple/ – 10basetom
ho letto quell'articolo molte volte prima, ed è per questo che ero in grado di rispondere alla domanda. – albert