CSSFontFeatureValuesRule
Baseline
2025
*
Newly available
Since March 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
* Some parts of this feature may have varying levels of support.
Giao diện CSSFontFeatureValuesRule đại diện cho một at-rule @font-feature-values. Các giá trị của thuộc tính phiên bản có thể được truy cập bằng giao diện CSSFontFeatureValuesMap.
@font-feature-values cho phép các nhà phát triển liên kết, cho một font face nhất định, một tên dễ đọc với chỉ mục số kiểm soát một tính năng font OpenType cụ thể. Đối với các tính năng chọn glyph thay thế (stylistic, styleset, character-variant, swash, ornament hoặc annotation), thuộc tính font-variant-alternates sau đó có thể tham chiếu tên dễ đọc để áp dụng tính năng liên quan. Điều này rất tiện lợi vì cho phép sử dụng cùng một tên để đại diện cho một tập hợp các glyph thay thế trên nhiều font khác nhau.
Thuộc tính phiên bản
Kế thừa các thuộc tính từ tổ tiên CSSRule.
CSSFontFeatureValuesRule.annotationExperimental-
Định nghĩa và giá trị do người dùng xác định, áp dụng chú thích thay thế của font.
CSSFontFeatureValuesRule.characterVariantExperimental-
Định nghĩa và giá trị do người dùng xác định, áp dụng các lựa chọn kiểu thay thế cho các ký tự của font.
CSSFontFeatureValuesRule.fontFamily-
Một chuỗi xác định họ font mà quy tắc này áp dụng.
CSSFontFeatureValuesRule.ornamentsExperimental-
Định nghĩa và giá trị do người dùng xác định, áp dụng các trang trí thay thế của font.
CSSFontFeatureValuesRule.stylesetExperimental-
Định nghĩa và giá trị do người dùng xác định, áp dụng các bộ kiểu thay thế của font.
CSSFontFeatureValuesRule.stylisticExperimental-
Định nghĩa và giá trị do người dùng xác định, áp dụng các glyph thay thế của font.
CSSFontFeatureValuesRule.swashExperimental-
Định nghĩa và giá trị do người dùng xác định, áp dụng các swash thay thế của font.
Phương thức phiên bản
Kế thừa các phương thức từ tổ tiên CSSRule.
Ví dụ
>Đọc họ font
Trong ví dụ này, chúng ta khai báo hai @font-feature-values: một cho họ font Font One và một cho Font Two. Trong cả hai khai báo, chúng ta định nghĩa rằng tên "nice-style" có thể được dùng để đại diện cho các glyph thay thế của styleset cho cả hai font, chỉ định chỉ mục cho glyph thay thế đó trong mỗi họ font. Các glyph thay thế sau đó được áp dụng cho bất kỳ class .nice-look nào, sử dụng font-variant-alternates và truyền tên cho hàm styleset().
Sau đó chúng ta sử dụng CSSOM để đọc các khai báo này dưới dạng các phiên bản CSSFontFeatureValuesRule, hiển thị chúng vào log.
CSS
/* At-rule for "nice-style" in Font One */
@font-feature-values Font One {
@styleset {
nice-style: 12; /* name used to represent the alternate set of glyphs at index 12 */
}
}
/* At-rule for "nice-style" in Font Two */
@font-feature-values Font Two {
@styleset {
nice-style: 4;
}
}
/* Apply the at-rules with a single declaration */
.nice-look {
font-variant-alternates: styleset(
nice-style
); /* name selects different index for same alternate in different fonts */
}
JavaScript
const logElement = document.querySelector("#log");
function log(text) {
logElement.innerText = `${logElement.innerText}${text}\n`;
logElement.scrollTop = logElement.scrollHeight;
}
const rules = document.getElementById("css-output").sheet.cssRules;
const fontOne = rules[0]; // A CSSFontFeatureValuesRule
log(`The 1st '@font-feature-values' family: "${fontOne.fontFamily}".`);
const fontTwo = rules[1]; // Another CSSFontFeatureValuesRule
log(`The 2nd '@font-feature-values' family: "${fontTwo.fontFamily}"`);
Thông số kỹ thuật
| Specification |
|---|
| CSS Fonts Module Level 4> # cssfontfeaturevaluesrule> |