--- title: CSS At-Rules createTime: 2022-03-26T11:46:50.024Z permalink: /article/btkqop1a author: pengzhanbo tags: - css top: false type: null --- ## @charset #### 概述 指定样式表中使用的字符编码。 它必须位于样式表中的第一个元素,且前面不得有任何字符。 不能在 ` ... ``` 加载字体文件,先尝试从用户本地加载,如果加载失败则从远程服务器下载: ``` html ... ... ``` 加载不同文件格式的字体,根据用户环境判断使用兼容的字体文件格式: ``` html ... ... ``` ## @import #### 概述 从其他样式表导入样式规则。 `@import` 必须优先于其他类型的规则,即需要在文件顶部声明。`@charset` 除外。 #### 语法 ``` css @import url; @import url list-of-media-queries; ``` - `url` 样式规则文件资源位置 - `list-of-media-queries` [媒体查询](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries),支持用逗号分隔多个查询条件。资源仅在满足媒体查询条件时才会被加载。 ## @keyframes #### 概述 通过在动画序列中定义关键帧的样式来控制CSS动画序列中的中间步骤。 #### 示例 使用 `from`,`to` 定义起始和结束关键帧的样式 实现动画 ``` css @keyframes slidein { from { transform: translateX(0%); } to { transform: translateX(100%); } } ``` 使用 百分比 定义触发关键帧的时间点 ``` css @keyframes slidein { 0% { transform: translateX(0%); } 50% { transform: translateX(50%); } 100% { transform: translateX(100%); } } ``` ## @media 媒体查询,详见 [CSS @media 媒体查询](/post/fe5ruia1/)