OriginCSS到底是什么?简单的回答就是分层装饰表可以描述网页上元素的风格和形状,比如颜色、大小、布局等等。复杂的答案是,它既是一种浏览器支持的样式配置,又是一种配置语言。回到很久以前,在互联网的早期,人们只是创造了XML的小表弟HTML,并用它来构造一个“好看”的网页。人们在页面上使用不同的元素名称来表示不同的内容,并根据浏览器内置的样式进行渲染。比如h1是大字号的粗体,code是等宽的小字,p是分段的文字等等。后来人们渐渐觉得这些内置的样式满足不了好看的追求,浏览器厂商就想,让你们这些写网页的人自己配置吧。所以HTML元素有一个style属性,通过它可以修改元素的样式:,这样的配置方式比较麻烦,比如页面上所有的按钮都必须有统一的格式,一个一个单独配置肯定是不现实的。于是样式表应运而生,简而言之就是用一个单独的文件来保存页面所有元素的样式配置。CSS的主要语法非常简单。大括号外的选择器表示被选中的元素,大括号内的具体样式配置:h1{color:red;font-size:20px;}每个样式属性之间,使用分号分隔,最后一项可以省略分号。分号的位置没有要求,如果你愿意,也可以把分号放在行首。CSS继承了XML和HTML不区分大小写的特性。当然,为了代码整洁,还是统一大小写格式比较好:elEmEnt{CoLoR:red;fonT-size:20px;background-color:green}CSS中唯一的数据类型是字符串,不像JSON,有布尔值、数字等。CSS都是字符串,但请记住它们不需要引号。CSS中的每个属性都可以接收一个或多个参数,参数之间用空格隔开,例如:padding:10px10px10px;selectorelementname,class,id刚才说??了大括号外面的是选择器,这让我想起了jQuery中的$选择器,其实和那个很像。基本规则是:的开头。表示元素的类,#开头表示元素的id,字母开头表示元素的类型名。请注意,class和id都区分大小写,这与元素类型名称不同。h1{}.my-class{}#my-id{}如果要同时为多个选择器配置相同样式的参数,那么用,来分隔,意思是“或”:.my-class,#my-id{background-color:yellow}伪类选择器也可以加一些修饰符,比如表示鼠标悬停时的样式,在后面加上:hover即可。这种单冒号修饰就叫做伪类(pseudoclass):.my-class:hover{color:red}还有一种伪元素,就是在它后面加两个冒号,叫做伪元素(pseudoelement),为例如::first-letter表示元素内容的首字母::my-class::first-letter{color:red}根据我实际测试,同时使用时,必须在a后面放两个冒号冒号,即.my-class:hover::first-letter这可行,但反之则不行。转义如果你的类名包含引号,需要用\转义,例如:
