Могу ли я объединить семейство шрифтов в CSS, чтобы иметь больше вариантов шрифтов через @font-face?
У меня есть этот код:
@font-face {
font-family: 'Conv_Casper';
src: url('fonts/Casper.eot');
src: local('☺'), url('styles/casper/Casper.woff') format('woff'), url('fonts/Casper.ttf') format('truetype'), url('fonts/Casper.svg') format('svg');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Conv_Casper Italic';
src: url('fonts/Casper Italic.eot');
src: local('☺'), url('styles/casper/Casper Italic.woff') format('woff'), url('fonts/Casper Italic.ttf') format('truetype'), url('fonts/Casper Italic.svg') format('svg');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Conv_Casper Bold';
src: url('fonts/Casper Bold.eot');
src: local('☺'), url('styles/casper/Casper Bold.woff') format('woff'), url('fonts/Casper Bold.ttf') format('truetype'), url('fonts/Casper Bold.svg') format('svg');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Conv_Casper Bold Italic';
src: url('fonts/Casper Bold Italic.eot');
src: local('☺'), url('styles/casper/Casper Bold Italic.woff') format('woff'), url('fonts/Casper Bold Italic.ttf') format('truetype'), url('fonts/Casper Bold Italic.svg') format('svg');
font-weight: normal;
font-style: normal;
}
это тот же "шрифт", но он меняется из-за веса/стиля. Могу ли я объединить этот стиль в одно семейство шрифтов?
1 ответов
Кажется, что вы можете, это W3 Spec:
эти дескрипторы определяют характеристики грани шрифта и являются используется в процессе сопоставления стилей с конкретными гранями. Для шрифта семейство, определенное несколькими правилами @font-face, агенты пользователей могут либо загрузите все лица в семействе или используйте эти дескрипторы для выборочно загружать грани шрифтов, соответствующие фактическим стилям, используемым в документ. Значения этих дескрипторов следующие: же, как и для соответствующие свойства шрифта, за исключением относительных ключевых слов не допускается ‘ "смелее" и "легче". Если эти дескрипторы опущены, принимаются значения по умолчанию.
взгляните на этот пример из Google Fonts:
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: local('Open Sans'), local('OpenSans'), url(http://themes.googleusercontent.com/static/fonts/opensans/v6/cJZKeOuBrn4kERxqtaUH3T8E0i7KZn-EPnyo3HZu7kw.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 600;
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://themes.googleusercontent.com/static/fonts/opensans/v6/MTP_ySUJH_bn48VBG8sNSnhCUOGz7vYGh680lGh-uXM.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 300;
src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url(http://themes.googleusercontent.com/static/fonts/opensans/v6/PRmiXeptR36kaC0GEAetxh_xHqYgAV9Bl_ZQbYUxnQU.woff) format('woff');
}
пример использования:
.will-use-the-first-font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
}
.will-use-the-second-font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 600;
}
.will-use-the-third-font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 300;
}