sass入门

1 篇文章 0 订阅
一、sass的安装
MAC中:终端安装
1、gem sources —remove https://rubygems.org/
2、gem sources -a https://ruby.taobao.org/
     (如果你系统不支持https,请将淘宝更换成:gem sources -a http://gems.ruby-china.org)
3、gem install sass
     sass -v 
     如果提示版本信息,说明安装成功

二、sass入门
1、sass文件有两种后缀名:一种后缀名为sass,不用大括号和分号; 另一种是scss,这种和我们平常写的css文件差不多,需要大括号和分号。
一般建议使用scss的文件;避免sass再严格模式下报错

文件后缀名为sass的语法
$px12 px
body
  background#d0e9c6
  font-size$px

div
  width100 px
  height100 px

文件后缀名为scss的语法
body{
  font-size$px;
}
div{
  padding$pxs;
  line-height$baseLineHeight;
  margin$pxc;
}
p{
  paddingnth( $pxd, 1);
}

三、sass文件的导入
sass导入是用@import规则导入;编译时@import导入的sass文件合并只生成一个css文件;如果导入的是普通的css文件,如:@import ’04.css’那导入的效果与普通的一样,不会合并到sass中,而是以@import url(04.css)方式存在

//01.scss

$px20 px;
$pxs12 px;
$baseLineHeight3;
$baseLineHeight1.5  !default;

$pxc5 px  10 px  20 px  30 px;
$pxd: ( 5 px  10 px) ( 20 px  30 px);

$linkColor#234 #752  !default;



body{
  font-size$px;
}
div{
  padding$pxs;
  line-height$baseLineHeight;
  margin$pxc;
}
p{
  paddingnth( $pxd, 1);
}
a{
  colornth( $linkColor, 1);

  &: hover{
    colornth( $linkColor, 2);
  }
}


//03.scss
$px12 px
body
  background#d0e9c6
  font-size$px

div
  width100 px
  height100 px

//03.css
h2{
    font-size16 px;
}


@import  "01";
@import  "03";
@import  "04.css";

导入后生成的css
@import  url( 04.css);
body {
  font-size20 px; }

div {
  padding12 px;
  line-height3;
  margin5 px  10 px  20 px  30 px; }

{
  padding5 px  10 px; }

{
  color#234; }
  a: hover {
    color#752; }

body {
  background#d0e9c6;
  font-size12 px; }

div {
  width100 px;
  height100 px; }


四、变量
sass的变量必须以$开头,变量值(key)与属性值(value)需用冒号(:)分开;后面加上!default表示为默认值
$px20 px; //普通变量
$pxs12 px;
$baseLineHeight3; //覆盖默认变量
$baseLineHeight1.5  !default; //默认变量

$sptop  !default; //特殊变量,变量作为属性或在某些特殊情况下等则必须要以#{$variables}形式使用

$pxc5 px  10 px  20 px  30 px; //多值变量,nth可以取到第几个值
$pxd: ( 5 px  10 px) ( 20 px  30 px); //二维数组

$headings: ( h12 emh21.5 emh31.2 em); //map类型的变量,以key、value的形式

$linkColor#234 #752  !default;

body{
  font-size$px;
}
div{
  padding$pxs;
  line-height$baseLineHeight;
  margin$pxc;
}
p{
  paddingnth( $pxd, 1);
}
//第一个值为默认值,第二个鼠标滑过值
a{
  colornth( $linkColor, 1);

  &: hover{
    colornth( $linkColor, 2);
  }
}

//应用class与属性
. border-#{ $sp}{
  border-#{ $sp}: $px;
}

@each  $header$size  in  $headings{
  #{ $header}{
    font-size$size;
  }
}

五、嵌套
sass的嵌套有两种方法:一种是选择器的嵌套;另一种是属性的嵌套;一般用的都是选择器嵌套。

选择器嵌套
选择器嵌套指的是在一个选择器中嵌套另一个选择器来实现继承,从而增强了sass文件的结构性和可读性。
在选择器嵌套中,可以使用 &表示父元素选择器
. nav-top{
  line-height50 px;
  background-color#c0a16b;
  li{
    font-size14 px;
  }
  a{
    padding0 10 px;
    color#0a9dc7;
    &: hover{
      color: #c0a16b;
    }
  }
}


属性嵌套
属性嵌套指的是有些属性拥有同一个开始单词,如border-width,border-color都是以border开头。
. border-sha{
  border: {
    stylesolid;
    left: {
      width: 10 px;
      color#0a9dc7;
    }
    right: {
      width20 px;
      color#0c60ee;
    }
  };
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值