前言
css的顶层样式表由两种规则组成的规则列表构成,一种称为at—rule规则,也就是at规则,另一种是qualified rule,也就是普通规则。今天就学习一下at规则
正文
@charset
用于提示css文件使用的编码方式,必须在最前面使用
@charset "utf-8";
@import
用于引入一个css文件,除了@charset规则不会被引入,可以引入一个文件的全部内容。
@import "mystyle.css";@import url("mystyle.css");
@import [ <url> | <string> ] ???????[ supports( [ <supports-condition> | <declaration> ] ) ]? ???????<media-query-list>? ;
@media
它能对设备的类型进行一些判断,在media的区块中,是普通规则列表
@media print { ???body { font-size: 10pt }}
我也经常用来做响应式布局的补充,如:
// 在width: 768px以下是使用下列布局
@media screen and (max-width: 768px) { ?.footer-div-center { ???padding-left: 0; ?} ?.footer-div-footer p { ???text-align: left; ???padding: 0 10px 0 10px; ?} ?.footer-div p { ???text-align: left; ???padding: 0 10px 0 10px; ?}}
@page
用于分页媒体访问网页时的表现设置,页面是一种特殊的盒模型结构,除了页面本身,还可以设置它周围的盒。
@page { ?size: 8.5in 11in; ?margin: 10%; ?@top-left { ???content: "Hamlet"; ?} ?@top-right { ???content: "Page " counter(page); ?}}
@counter-style
产生一种数据,用于定义列表项的消息
@counter-style triangle { ?system: cyclic; ?symbols: ?; ?suffix: " ";}
@key-frames
keyframes产生一种数据,用于定义动画关键帧
@keyframes diagonal-slide { ?from { ???left: 0; ???top: 0; ?} ?to { ???left: 100px; ???top: 100px; ?}}
@fontfacce
yongyu定义一种字体,icon font技术就是利用这个特性实现的
@font-face { ?font-family: Gentium; ?src: url(http://example.com/fonts/Gentium.woff);}p { font-family: Gentium, serif; }
@support
检查环境的特性,它与media类似
@namespace
用于跟xml命名空间配合的一个规则,表示内部的css选择器全都带上特定的命名空间
@viewport
用于设置视口的一些特性,不过兼容性目前不是很好,多数时候被heml的meta代替
css选择器的示意图
以上内容为个人的学习笔记,仅作为学习交流之用。
欢迎大家关注公众号,不定时干货,只做有价值的输出
作者:Dawnzhang
带@的css语法,你知道多少?
原文地址:https://www.cnblogs.com/clwydjgs/p/10434644.html