我们使用扩展技术编写代码时,需要先用编译器将我们的文件进行编译,编译后的文件才能够使用。
 less技术相关语法

less相对来说比较简单,语法也较少:
    变量的定义:
    @w:20px;
    变量的使用:
    .p2{
    width:@w
    }
    编译后的结果为:
    .p2{
    width:20px;
    }
    
    混合使用:
    先定义:
    .radius{
    border-radius:10px;
    }
    引用:
    .p1{
        .radius
    }
    传参数:
    .radius(@a){
    border-radius:@a;
    }
    引用:
    .p1{
        .radius(10px);
    }
    伪类的定义:
    .p1{
        &:hovor
    }
    以上的&表示当前元素的父元素,上面的代码转译之后为:
    .p1:hovor{ };

sass技术 
    sass的功能比less强大许多,语法也有些不同,sass的文件后缀名有.sass,也有.scss,现在多用.scss。
    下面来看语法:
    导入css文件:
    @import "a.css"
    导入scss文件:
    @import "b"//不用写后缀名
    
    变量的定义:
    $color:blue !default;//default为设置的默认值,可允许修改
    在元素中嵌入一个变量,需要用#{}将变量括起来
    $direct:top;
    .border-#{$direct}{ };
    
     多值变量:
    $num:1px 2px 3px 4px;
    .p1{
        padding:$num
    }
    margin:nth($num,1)//nth:根据下标序号获取数组中的值(1px)
    $num1:1px 2px,3px 4px;
    margin:nth($num1,2)//3px,4px
    
    键值对:
    $map:(a1:10px,a2:5px,a3:3px,a4:1px);
    取值:
    .p{
        width:map-get($map,a1)
        height:map-get($map,a2)
    }
    伪元素的定义:
    .p2{
        &:hovor{
        }
    }//&为此元素的父元素
    
    div{
        @at-root p{
            color:red
        }
    }
    p的执行结果:
    div{};
    p{
        color:red
    }
    @at-root是表示跳出父元素
    
    属性的嵌套:
    .d2{
        border:{
            top:20px;
            left:25px;
        }
    }
    编译为:
    .d2{
        border-top:20px;
        border-left:25px;
    }
    scss中,加了:会编译成(-)属性,不加:为选择器的嵌套

反选:
    .child{
        @at-root .p1 &{
        }
    }
    译成:
    .p1 .child{}
    
    混合:
    先定义:
    @mixin whb{
        width:200px;
        height:100px;
    }
    引用:
    div{
        @include whb
    }
     混合,传参的定义:
    @mixin whb($w,$h){
        width:$w;
        height:$h
    }
    调用:
    div{
        @include whb(20px,10px);
    }
    继承:
    %h1{
        font-size:12px;
    }//%会将h1隐藏,不会显示在CSS代码中
    应用:
    p2{
        @extend %h1
    }
 scss混合和继承
    如果重用的代码里面没有参数,就用继承,有参数,用混合。

CSS3扩展技术的更多相关文章

  1. css的扩展技术

    CSS的扩展技术 (在原来的CSS语言的基础上扩展了js,可以在里面写js ) 一.less 定义: @color:red; //定义颜色 @body-color:blue; @div-color:y ...

  2. 手把手教你玩转 CSS3 3D 技术

    css3的3d起步 要玩转css3的3d,就必须了解几个词汇,便是透视(perspective).旋转(rotate)和移动(translate).透视即是以现实的视角来看屏幕上的2D事物,从而展现3 ...

  3. 手把手教你玩转CSS3 3D技术

    手把手教你玩转 CSS3 3D 技术   要玩转css3的3d,就必须了解几个词汇,便是透视(perspective).旋转(rotate)和移动(translate).透视即是以现实的视角来看屏幕上 ...

  4. Python 扩展技术总结(转)

    一般来说,所有能被整合或导入到其他Python脚本中的代码,都可以称为扩展.你可以用纯Python来写扩展,也可以用C/C++之类的编译型语言来写扩展,甚至可以用java,C都可以来写 python扩 ...

  5. 【CSS】330- 手把手教你玩转 CSS3 3D 技术

    点击上方"前端自习课"关注,学习起来~ CSS3的3D起步 要玩转css3的3d,就必须了解几个词汇,便是透视(perspective).旋转(rotate)和移动(transla ...

  6. Css3小技术

    圆角border-radius border-radius:length *注: 这是一个缩写,相当于四个角设置同样的值,用px或者百分比都可以,想要成为圆形,就用50%,你也可以单独设置每个角,语法 ...

  7. Java管理扩展指南之JMX技术总览

    JMX(Java管理扩展)系列 JMX(Java管理扩展)系列旨在介绍包含于Java基础版本(Java SE)中的JMX技术.本系列提供了如何使用JMX重要技术特性的诸多示例. 一.JMX技术总览简要 ...

  8. 大话ASP.NET开发(第一章 html5+css3+解耦问题的探讨)

    一.拉近我们的距离 我想,很多人会问,如今IE6还占据颇多份额的中国,html5.css3是否还很遥远?我会很直接告诉他们:其实就在你的眼前.我们来看两个图:                      ...

  9. CSS3 动画基础

    该文为译文转载,原文地址:http://tech.163.com/mobile/10/0106/09/5SB96QSM00112K88.html   译文:你需要知道的CSS3 动画技术 原文:Wha ...

随机推荐

  1. Windows 7 封装篇(一)【母盘定制】[手动制作]定制合适的系统母盘

    Windows 7 封装篇(一)[母盘定制][手动制作]定制合适的系统母盘 http://www.win10u.com/article/html/10.html Windows 7 封装篇(一)[母盘 ...

  2. Hadoop中wordcount程序

    一.测试过程中 输入命令: 首先需要在hadoop集群中添加文件 可以首先进行查看hadoop集群中文件目录 hadoop fs -ls / hadoop fs -ls -R / hadoop fs ...

  3. REST架构之Apache Wink

    Apache Wink是一个使用简单,稳定的Java框架,用于创建RESTful web services应用程序.Wink包括了一个服务器端模块和一个客户端模块,用于帮助开发者快速高效的开发REST ...

  4. mongodb语法备份(转)

    mongodb语法 MongoDB的好处挺多的,比如多列索引,查询时可以用一些统计函数,支持多条件查询,但是目前多表查询是不支持的,可以想办法通过数据冗余来解决多表查询的问题. 查询colls所有数据 ...

  5. document.all.wb.ExecWB

      <%@ page language="java" pageEncoding="UTF-8"%>   <%@ taglib uri=&quo ...

  6. JavaScipt 事件体系

    事件机制 jQuery对事件的绑定分别有几个API .bind()/.live()/.delegate()/.on() 不管是用什么方式绑定,归根到底还是用addEventListener/attac ...

  7. c语言迷宫游戏的实现

    // // main.c // 迷宫游戏代码实现 // #include <stdio.h> #define ROW 6 //宏定义行 #define COL 6 //宏定义列 /** * ...

  8. networkcomms 相关文章(转载)

    介绍开源的.net通信框架NetworkComms框架之一 首字节验证 介绍开源的.net通信框架NetworkComms框架之二 传递类 介绍开源的.net通信框架NetworkComms框架之三 ...

  9. 超酷震撼 HTML5/CSS3动画应用及源码

    HTML5可以制作非常华丽的动画效果,这点通过之前的分享学习我们已经有深刻的了解了,今天我们主要来分享一些HTML5结合CSS3形成的超炫震撼的动画应用以及它们的源代码,真的非常不错. 1.纯CSS3 ...

  10. php_html转译符号

    1.双引号 /" 或者 " 2.单引号 ' > 4. & &