CSS中一些@规则的用法小结


Posted in HTML / CSS onMarch 09, 2021

常规规则遵循下面的语法:

@[KEYWORD] (RULE);

@charset
这个规则定义了浏览器使用的字符集,如果样式表包含非ASCII characters (e.g:UTF-8)。注意,被放在HTTP头部的字符集将会覆盖@charset规则

@charset "UTF-8";

@import
这个规则指示请求样式表,在这一行,如果内容是正确的,就会引入一个外部的CSS文件。

@import 'global.css';
虽然流行的CSS预处理器都支持@import,但是应该指出的是,它们的工作原理不同于原生的CSS:预处理器会抓取CSS文件并将它们处理成一个CSS文件,对原生CSS,每一个@import都是一个独立的HTPP请求。

@namespace
对于将CSS应用在XML HTML(XHTML),这个规则是非常有用的,因为XHTML元素能在CSS中被作为一个选择器使用。

/* Namespace for XHTML */
@namespace url(http://www.w3.org/1999/xhtml);
/* Namespace for SVG embedded in XHTML */
@namespace svg url(http://www.w3.org/2000/svg);

 

嵌套规则

嵌套规则包含了额外的子集声明,其中一些声明只能用于特定情况。

 

@[KEYWORD] {
/* Nested Statements */
}

@document
这个规则为样式表指定了条件:只能应用于特定页面。举个粟子,我们提供一个URL,然后为这个特定的页面自定义样式,在其他页面中,这些样式会被忽略。

@document
/* Rules for a specific page */
url(http://css-tricks.com/),
/* Rules for pages with a URL that begin with... */
url-prefix(http://css-tricks.com/snippets/),
/* Rules for any page hosted on a domain */
domain(css-tricks.com),
/* Rules for all secure pages */
regexp("https:.*") {
/* Start styling */
	body {
		font-family: Comic Sans;
	}
}

@font-face
这个规则允许在web页面上加载自定义字体,对自定义字体有不同程度的支持,但是这个规则接受语句创建和提供这些字体。

@font-face {
	font-family: 'MyWebFont';
	src: url('myfont.woff2') format('woff2'),
	url('myfont.woff') format('woff');
}

@keyframes
在诸多CSS属性中,这个规则是关键帧  动画的基础,并允许我们标记动画开始和结束的标志。

@keyframes pulse {
	0% {
		background-color: #001f3f;
	}

	100% {
		background-color: #ff4136;
	}
}

@media
这个规则包含条件声明,可用于为特定屏幕指定样式,这些声明可以包含屏幕大小,在适屏样式中会很有用.

@media only screen and (min-device-width: 320px) and (max-device-width: 480px)and (-webkit-min-device-pixel-ratio: 2) {
    .module { width: 100%; }
}

或者只在文档打印时运用样式

@media print {
}

@page
这个规则为将要打印的单独页面定义样式。特别的是,它能为页面伪元素设置外边距::first、:left和:right

@page :first {
    margin: 1in;
}

@supports
这个规则可测试浏览器知否支持某个特性/功能,如果满足条件,将会为这些元素应用特定样式。有点像Modernizr,但确实是CSS属性。

/* Check one supported condition */
@supports (display: flex) {
	.module {
		display: flex;
	}
}
/* Check multiple conditions */
@supports (display: flex) and (-webkit-appearance: checkbox) {
	.module {
		display: flex;
	}
}

 

HTML / CSS 相关文章推荐
css3实现背景模糊的三种方式
Mar 09 HTML / CSS
使用CSS3的::selection改变选中文本颜色的方法
Sep 29 HTML / CSS
用CSS3实现无限循环的无缝滚动的示例代码
Nov 01 HTML / CSS
CSS3实现文字描边的2种方法(小结)
Feb 14 HTML / CSS
CSS3实现苹果手机解锁的字体闪亮效果示例
Jan 05 HTML / CSS
CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码
Feb 24 HTML / CSS
详解HTML5通讯录获取指定多个人的信息
Dec 20 HTML / CSS
HTML5 声明兼容IE的写法
May 16 HTML / CSS
html5录音功能实战示例
Mar 25 HTML / CSS
详解如何在登录过期后跳出Ifram框架
Sep 10 HTML / CSS
HTML5适合的情人节礼物有纪念日期功能
Jan 25 HTML / CSS
CSS link与@import的区别和用法解析
May 07 HTML / CSS
a标签的css样式四个状态
Mar 09 #HTML / CSS
详解CSS样式中的 !important * _ 符号
CSS中简写属性要注意TRouBLe的顺序问题(避免踩坑)
CSS心形加载的动画源码的实现
使用CSS3实现字体颜色渐变的实现
css动画效果之animation的常用样式
Mar 09 #HTML / CSS
纯CSS3实现质感细腻丝滑按钮
Mar 09 #HTML / CSS
You might like
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
php导出CSV抽象类实例
2014/09/24 PHP
php数组查找函数总结
2014/11/18 PHP
PHP开发注意事项总结
2015/02/04 PHP
PHP中余数、取余的妙用
2015/06/29 PHP
php实现socket推送技术的示例
2017/12/20 PHP
学习ExtJS fit布局使用说明
2009/10/08 Javascript
基于jquery的一行代码轻松实现拖动效果
2010/12/28 Javascript
Nodejs中自定义事件实例
2014/06/20 NodeJs
JavaScript获取当前运行脚本文件所在目录的方法
2016/02/03 Javascript
javascript特殊日历控件分享
2016/03/07 Javascript
jquery实现Ajax请求的几种常见方式总结
2019/05/28 jQuery
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
原生js代码能实现call和bind吗
2019/07/31 Javascript
浅谈javascript错误处理
2019/08/11 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
python的Template使用指南
2014/09/11 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
2020/01/09 Python
pytorch 中的重要模块化接口nn.Module的使用
2020/04/02 Python
Python+unittest+DDT实现数据驱动测试
2020/11/30 Python
html5 Canvas画图教程(9)—canvas中画出矩形和圆形
2013/01/09 HTML / CSS
斯洛伐克时尚服装网上商店:Cellbes
2016/10/20 全球购物
美国领先的低折扣旅行网站:Hotwire
2019/01/19 全球购物
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
照片礼物和装饰:MyPhoto
2019/11/02 全球购物
对象的序列化(serialization)类是面向流的,应如何将对象写入到随机存取文件中
2015/06/22 面试题
县级文明单位申报材料
2014/05/23 职场文书
征兵宣传标语
2014/06/20 职场文书
爱的奉献演讲稿
2014/09/10 职场文书
普通党员对照检查材料
2014/09/24 职场文书
交通事故和解协议书
2014/09/25 职场文书
质量保证书怎么写
2015/02/27 职场文书
业务员年终工作总结2015
2015/05/28 职场文书
食堂管理制度范本
2015/08/04 职场文书
python 如何用terminal输入参数
2021/05/25 Python