一、LESS的学习笔记:

  1.less介绍:一种动态样式语言。less将css赋予了动态语言的特性,如变量,继承,运算,函数,less既可以在客户端上运行(支持IE6+,webkit,firefox),也可以借助node.js或者Rhino在服务端运行。less的中文文档,可以参照这两个地址进行学习:http://less.bootcss.com/   http://www.bootcss.com/p/lesscss/

  2.less的安装

  法一:安装iterm或者使用终端都可以,然后输入sudo npm install -g less (mac系统下)

  法二:去官网下载引用

  

  3.辅助编译软件koala  http://koala-app.com/index-zh.html

  4.注释

  /*代码*/  会被编译的

  //  不会被编译的

  5.变量

  定义变量的方法:@变量名:值;如:@test-width:300px;.box{width:@test-width;}

  6.混合

  可以混合使用css样式,如在less文件中可以这样写:

  .border{border:solid 5px pink;}

  .box{.border;width:300px;height:300px;}

  另外,混合是可以带参数的,如:

  .border_02(@border_width){border:solid yellow @border_width;}

  .test_hunhe{.border_02(30px);}

  而且,混合还可以带默认值,如:

  .border_03(@border_width:10px){border:solid yellow @border_width;}

  .test_hunhe_03{.border_03();}

  (在这种情况下,()内不填值,即使用默认值,()内如果填值,则显示需要填写的值,如.border_03(20px);)

  混合的例子:

  .border_radius(@radius:5px){

    -webkit-border-radius:@radius;

    -moz-border-radius:@radius;

    border-radius:@radius;

  }

  .radius_test{

    width:100px;

    height:100px;

    background-color:green;

    .border_radius;

  }

  7.匹配模式

  相当于js中的if,但不完全是,满足条件后才能匹配,例如(三角形):

  .triangle(top,@w:5px,@c:#ccc){

    border-width:@w;

    border-color:transparent transparent @c transparent;

    border-style:dashed dashed solid dashed;

  }

  .triangle(bottom,@w:5px,@c:#ccc){

    border-width:@w;

    border-color:@c transparent transparent transparent;

    border-style:solid dashed dashed dashed;

  }

  .triangle(left,@w:5px,@c:#ccc){

    border-width:@w;

    border-color:transparent @c transparent transparent;

    border-style:dashed solid dashed dashed;

  }

  .triangle(right,@w:5px,@c:#ccc){

    border-width:@w;

    border-color:transparent transparent transparent @c;

    border-style:dashed dashed dashed solid;

  }

  .triangle(@_,@w:5px,@c:#ccc){

    width:0;

    height:0;

    overflow:hidden;

  }

  .sanjiao{

    .triangle(top,100px);

  }

  例子:定位

  .pos(r){position:relative;}

  .pos(a){position:absolute;}

  .pos(f){position:fixed;}

  .pipei{

    width:200px;

    height:200px;

    background-color:green;

    .pos(r);

  }

  8.运算

  @test_01:300px;

  .box_02{

    width:(@test_01-20)*5;

    color:#ccc-10;

  }

  9.嵌套规则

  两种方法:&  对伪类使用,-hover或focus;对连接使用,-&-item,例如:

  html层:

    <ul class="list"><li><a></a><span></span></li></ul>

  css less层:

    .list{

      width:600px;

      li{height:30px;}

      a{float:left;}

      span{float:right;}  

    }

  例子:伪类的写法

    a{float:left;

     &:hover{color:red;}}

    &代表他的上一层选择器

  10.arguments变量

  .border_arg(@w:30px,@c:red,@xx:solid){

    border:@arguments;

  }

  .test_arguments{

    .border_arg(40px);

  }

  11.避免编译 !important及总结:

  避免编译:有时候我们需要输出一些不正确的css语法或者使用一些less不认识的专有语法。要输出这样的值,我们可以在字符串前加上一个~ 例如:width:~'calc(100%-35)'

  !important关键字:会为所有混合所带来的样式,添加上!important

二、总结:

  (1)通过less设置字体,并进行全局计算的方法;

    条件:PSD稿为640px,通过动态设置html字体大小,得出html字体为40px;

    定义变量:@rem:40px;

    使用:如果某个字体/宽/高在PSD稿上为20px,则可以设置为20/@rem;

  (2)清除浮动样式:

    .clearfix:after{

      contant:"";

      display:block;

      clear:both;

    }

    使用在应用了float的父级元素上面。

  (3)移动端需要注意的问题

    a.固定定位(fixed)元素内容中,如果有input元素的话,当获取焦点触发键盘之后会导致定位错误的情况发生;

    b.不管使用北京图还是img,一定要调整对应的size(大小)background-size属性,如果图片大小和容器大小一致,则可以使用100%,如果不一致,则针对图片分别设置宽高;

    c.碰到文字,一定要测量行高,不然高度会不准确;

    标签的特性需要熟记于心。

第二课 less的学习以及移动端需要注意的问题的更多相关文章

  1. 【第二课】从零开始学习Linux(学习笔记)

    之前工作会接触Linux,会常用的命令和服务,看过一些书,缺乏系统的学习和整理,现在放空自己,从零开始学习. 每日学习打卡: 2022-04-04

  2. 【Android开发学习笔记】【第二课】Activity学习

    什么是Activity,就是我们所看到的 需要理解以下四句话: 1.一个Activity就是一个类,并且这个类需要集成Activity: 2.需要重写OnCreat方法 3.每个Activity都需要 ...

  3. 【原创 深度学习与TensorFlow 动手实践系列 - 2】第二课:传统神经网络

    第二课 传统神经网络 <深度学习>整体结构: 线性回归 -> 神经网络 -> 卷积神经网络(CNN)-> 循环神经网络(RNN)- LSTM 目标分类(人脸识别,物品识别 ...

  4. Elasticsearch7.X 入门学习第二课笔记----基本api操作和CRUD

    原文:Elasticsearch7.X 入门学习第二课笔记----基本api操作和CRUD 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链 ...

  5. 红帽学习笔记[RHCSA] 第二课[文件、目录、相关命令]

    第二课 常用的目录结构与用途 / 根目录 /boot 存储的是系统起动时的信息和内核等 /dev 存储的是设备文件 /etc 存储的是系统的配置文件 /root 存储的是root用户的家目录 /hom ...

  6. CI(CodeIgniter)框架入门教程——第二课 初始MVC

    本文转载自:http://www.softeng.cn/?p=53 今天的主要内容是,使用CodeIgniter框架完整的MVC内容来做一个简单的计算器,通过这个计算器,让大家能够体会到我在第一节课中 ...

  7. NeHe OpenGL教程 第二课:多边形

    前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢 ...

  8. 过拟合/欠拟合&logistic回归等总结(Ng第二课)

    昨天学习完了Ng的第二课,总结如下: 过拟合:欠拟合: 参数学习算法:非参数学习算法 局部加权回归 KD tree 最小二乘 中心极限定律 感知器算法 sigmod函数 梯度下降/梯度上升 二元分类 ...

  9. 【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握

    内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:“小编,你为什么每次都要起这么非主 ...

随机推荐

  1. canvas游戏小试:画一个按方向键移动的圆点

    canvas游戏小试:画一个按方向键移动的圆点   自己对canvas,但又有一颗做游戏的心TT.然后记录一下对canvas的学习吧,用一个按方向键控制的小圆点来做练习.(编程时用了一些es6的语法) ...

  2. Laravel5.1-Eloquent ORM:起步

    概述 有很多朋友问,MCV的M是在哪里介绍的,这里就是介绍M的地方了.Laravel有一个强大的数据库ORM Eloquent,它的原理是每张数据表对应一个Model,对Model的操作就对应数据库的 ...

  3. linux下一步一步安装禅道项目管理工具

    linux下一步一步安装禅道项目管理工具 因为禅道官网的安装教程实在是太简陋了,所以记录在此. 1.安装apache服务 archlinux下直接 sudo pacman -S apache ubun ...

  4. 装b指南

    提溜一个糖水黄桃罐头瓶,放在桌边,坐下以后,脖子略微后仰,翘着二郎腿,低头盯着屏幕看需求. 最好点一根烟,牌子无所谓,能冒烟就行.要得就是云山雾绕的感觉,从烟雾中眯着眼睛看出去,一副胸有成竹的样. 一 ...

  5. MyBatis 中 Result Maps collection already contains value for xxx 错误原因

    出现此类错误的原因是同一个DAO操作多个Mapper导致的,将Mapper配置文件的  ResultMap的ID修改成不相同即可解决

  6. 傅里叶变换库FFTW的安装配置(VS2010)

    FFTW是用来计算一维或者多维的离散傅里叶变换,输入可以为实数序列也可以为复数序列的C语言的子函数库,FFTW是免费软件,是作为fft函数库的各种应用的上佳选择. 1. 从网站http://www.f ...

  7. redis配置文件redis.conf参数说明

    redis配置文件redis.conf参数说明 (2013-01-09 21:20:40)转载▼ 标签: redis配置 redis.conf 配置说明 杂谈 分类: nosql # By defau ...

  8. Angularjs与bootstrap.datetimepicker结合实现日期选择器

    http://www.lovelucy.info/angularjs-best-practices.html http://damoqiongqiu.iteye.com/blog/1917971 ht ...

  9. Python 包管理工具解惑

    Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到 ...

  10. Unity3d《Shader篇》变胖

    变胖前 变胖后 //Shader Shader "Custom/NormalExt" { Properties { _MainTex("Base (RGB)", ...