首页 > 其他分享 >css预处理器

css预处理器

时间:2023-07-22 22:46:13浏览次数:28  
标签:liveSassCompile sass 处理器 div btn 选择器 css

一。为什么要使用css预处理器呢

1.传统的css没有像js,一样拥有编程语言的能力,能够拥有常量、变量、以及语法,这样随着网站的发展势必会造成css代码会显得非常臃肿以及难以维护,于是css预处理器作为css的扩展就出现在了我们面前。

二。sass

是一种动态样式语言,sass语言属于缩排语法,比css多出很多功能比如,变量,嵌套,运算,混入,继承,指令、函数、颜色处理等等。

sass工作原理是将.scss文件交由sass编译器将其最终处理为能让浏览器能认识的css文件

二。sass与scss的区别(也就是说scss是sass的第三代)

一开始是出现了sass但由于语法不直观,存在缩进。也不能将css代码加入到sass中去,所以将sass3进行了改良,改成了scss,与原来的css兼容,只不过将{}取代了原来的缩进。

三。在vscode里安装插件,用于编译器编译成css文件,安装 LIve Sass Compiler插件    进行扩展配置,在setting.josn下配置。

{     /* 压缩设置 */     "liveSassCompile.settings.formats":[         // This is Default.         {             "format": "compressed", // nested, expanded, compact, compressed             "extensionName": ".min.css",             "savePath": "~/../css"  // 为 null 表示当前目录         }     ],
    /* 排除目录 */     "liveSassCompile.settings.excludeList": [                 "**/node_modules/**",         ".vscode/**"     ],     /* 是否生成对应的map */     "liveSassCompile.settings.generateMap": false,
    /* 是否添加兼容前缀 如: -webkit- , -moz- ... */     "liveSassCompile.settings.autoprefix": [             "> 1%",         "last 2 versions"     ],
    "liveSassCompile.settings.showOutputWindow": true } 四。sass的四种输出格式 五。sass功能对比 1.写法上选择器有层级嵌套,不会像之前的写一堆后代选择器    2.有&符号代替父元素写进去,比如  a:hover 可以用&:hover代替父元素a;   3.属性相同的也可以提出来,称为属性嵌套   4.占位选择器 五。这里补充一下css继承选择器的几个知识 1.  .div  .btn  这里是指后代选择器   选择。div下的所有btn类的子孙元素 2.   .div>.btn   这里指的是.div下的.btn的子元素 3.   .div.btn   这里指的是要选择既要具有。div类的元素也要选择具有.btn类的元素 六。变量 1.css3也可以使用变量
:root {
--primary-color: #007bff;
}
.button {
background-color: var(--primary-color);
}
2.在scss中变量是用$加变量名定义的,使用也是用$变量名使用,得先定义后使用。
$lh:#fff; p{     color:$lh } 七.import 导入 八.混入   mixin    是为了定义一个区域或者说模块的样式。  它可以传参 它有助于减少代码的重复,只需声明一次,就可以在文中引用, 什么时候用混入呢?很多地方都会用到,却能根据不同的场景灵活使用样式。 定义一个混入@mixin 混入名字{  }        使用@include 混入名字 九.继承    @extend 十。运算符  ==    与   !=      比较运算符   >   <   >=   <=    逻辑运算符    and    or   not    十一。插值语句   #{}
 

标签:liveSassCompile,sass,处理器,div,btn,选择器,css
From: https://www.cnblogs.com/lhnbclass/p/17574450.html

相关文章

  • 每日汇报 第四周第七天 简单的css和JAVAI/O流
    今日所学:简单的css设计;掌握BufferedInputStream类与BufferedOutputStream类的构造方法及其参数含义;明确BufferedReader类与BufferedWriter类是以行为单位进行输入/输出的;掌握BufferedReader类与BufferedWriter类中的常用方法。html:1<!DOCTYPEhtml>2<htmllang="en">......
  • CSS标签
    伪类选择器<style>/*未访问时候显示的*/a:link{color:#FF0000;}/*鼠标移动到链接上*/a:hover{color:#FF00FF}/*选定的链接*/a:active{color:#0000FF......
  • css基础-垂直对齐vertical-align
    什么是垂直对齐vertical-align指定行内元素(inline)或表格单元格(table-cell)元素的垂直对齐方式。不能用它垂直对齐块无素必须是行内或者行内块元素对齐方式有哪些/*Keywordvalues*/vertical-align:baseline;vertical-align:sub;vertical-align:super;vertical-align:......
  • CSS2.1规范笔记——10 视觉格式化模型细节
    视觉格式化模型细节包含块的定义元素(生成的)盒的位置有时候是根据一个特定的矩形计算的,叫做元素的包含块(containingblock)。元素包含块的定义如下:元素包含块其为根元素。其包含块是一个被称为初始包含块的矩形。对连续媒体,尺寸取自视口的尺寸,并且被固定在画布开......
  • CSS2.1规范笔记——9.4 常规流
    常规流常规流中的盒属于一个FC,可能是BFC或是IFC中的一个。块级盒参与BFC,行内级盒参与IFC。BFCBFC的产生条件:float:left|rightposition:absolute|fixeddisplay:inline-block|table-cell|table-caption(以及匿名的表格元素)overflow:hidden|auto|scrollBFC的布局......
  • CSS2.1规范笔记——9.5 浮动
    浮动一个浮动盒会向左或向右移动,直到其外边界挨到包含块边界或者另一个浮动盒的外边界。如果存在行框,浮动盒的上外(边界)会与当前行框的上(边界)对齐。如果没有足够的水平空间来浮动,它会向下移动,直到空间合适或者再没出现过其他浮动。因为浮动盒不在常规流内,在浮动盒之前或者之后创......
  • CSS2.1规范笔记——9.6 绝对定位
    绝对定位绝对定位模型中,盒相对其包含块偏移,它会从常规流中全部移除(不会影响后面的兄弟)。绝对定位的盒会为常规流中的子级和绝对(不包括fixed)定位的后代建立一个新的包含块。然而绝对定位的内容不会沿着任何其他盒排列。它们可能会遮住其他盒的内容(或者被它们自身遮住),取决于重叠盒......
  • CSS2.1规范笔记——9.7 分层展示
    分层展示z-index属性该属性指定了:当前堆叠上限爱问(stackingcontext)中,该盒的堆叠层级(stacklevel);该盒是否应该建立一个堆叠上下文;该属性的取值为:<integer>:是生成盒当前堆叠上下文中的堆叠层级,该盒还会建立一个新的堆叠上下文。auto:生成盒在当前堆叠上下文中的堆叠层级为......
  • CSS2.1规范笔记——9.2 控制盒的生成
    控制盒的生成控制盒就是我们常说的盒。盒的类型对其在视觉格式化模型中的行为有一定影响。display的取值display属性指定了盒的类型:none:此元素不会被显示。block:此元素将显示为块级元素,此元素前后会带有换行符。inline:默认。此元素会被显示为内联元素,元素前后没有换行符。......
  • CSS2.1规范笔记——9.1 视觉格式化模型(视口和包含块)
    视觉格式化模型视觉格式化模型:对于可视化媒体,用户代理怎样处理文档树。在视觉格式化模型中,文档树中的每个元素根据其盒模型生成0或多个盒。这些盒的布局由以下因素控制:盒尺寸与类型定位方案(常规流、浮动与绝对定位)文档树中元素间的关系外部信息(例如视口大小、图片的固有尺寸......