1. @charset 规则
@charset 规则用于指定 CSS 文件中的字符编码类型。
在 CSS 文件的开头,使用 @charset 规则可以指定文件的字符编码类型,以确保浏览器能够正确地解析和显示文件中的内容。
常见的字符编码类型有 UTF-8、GBK、ISO-8859-1 等。
@charset "UTF-8";
2. @import 规则
@import 规则用于引入一个外部的 CSS 文件。
当 CSS 文件较大且功能模块较多时,可以将不同功能的样式定义分别存放在不同的 CSS 文件中,然后使用 @import 规则将这些外部样式表引入到主要的 CSS 文件中。
注意:@import 规则必须位于所有其他规则之前。
@import url("style1.css");
@import url("style2.css");
3. @media 规则
3.1 基本用法
@media 规则用于指定特定条件下应用的样式规则。
常见的使用场景是在不同设备上应用不同的样式,以实现响应式布局。
@media screen and (max-width: 768px) {
/* 在屏幕宽度小于等于 768px 时应用的样式 */
}
3.2 嵌套使用
@media 规则可以嵌套使用。
例如,可以在 @media 规则中嵌套使用 @media 规则,以实现更精确的条件匹配。
@media screen and (max-width: 768px) {
/* 在屏幕宽度小于等于 768px 时应用的样式 */
@media (orientation: landscape) {
/* 在横屏模式下应用的样式 */
}
}
4. @font-face 规则
@font-face 规则用于定义自定义的字体。
通过使用 @font-face 规则,可以加载远程字体文件,或者使用本地计算机上存储的字体文件。
@font-face {
font-family: "CustomFont";
src: url("customfont.woff2") format("woff2"), url("customfont.woff") format("woff");
/* 指定字体文件的路径和格式 */
}
5. @keyframes 规则
@keyframes 规则用于创建动画。
通过定义关键帧的样式,可以实现动态的效果。
@keyframes slidein {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
/* 定义一个从透明到完全可见的渐变动画 */
6. @supports 规则
@supports 规则用于检测浏览器是否支持某些 CSS 属性。
通过使用 @supports 规则,可以根据浏览器是否支持某些 CSS 属性来应用不同的样式。
@supports (display: grid) {
/* 如果浏览器支持 grid 布局,则应用该样式 */
}
以上是 CSS 中一些常见的 @规则 的用法小结。通过这些 @规则,我们可以更好地控制和管理 CSS 文件中的样式,以达到更好的页面效果。