css预处理器

一种技术,可以提高编写css代码的技术而已。

有3种预处理器常见

  1. less

  2. sass

  3. stylues

less使用流程

  1. 编写符合less语法less文件

  2. 使用工具 将less编译成 css

  3. 在网页当中 引用 编译好的 css文件

      <link rel="stylesheet" href="./css/01.css">

注意

  1. 浏览器根本就不认识 什么less sass。。

  2. 浏览器 只认识 熟悉 css文件

less的语法

less语法是完全兼容css语法的

在less文件中,直接写入css代码是正确的语法。

less所有的语法 不止这一些 但是 上课讲解的足够使用

变量语法

  1. 电商的网站 很多页面

  2. 主题颜色 天猫 京东 都是红色 美团 绿色 苏宁 黄色 唯品会 粉红色

  3. 让 把天猫的主题颜色红色 改成 蓝色!!!

    1. 要改的标签很多

    2. 出错

    3. 技术含量

    4. 领导骂你

@color: green;
header {
background-color:@color;
}
main {
background-color: @color;
}
footer {
background-color: @color;
}

less语法

嵌套

div{
background-color: red;
>p{
color: yellow; }
a{
background-color: pink;
}
.redCls{
background-color: red;
}
/* 伪元素的冒号前面 加一个符号 & */
&:before{
content: "南京路";
}
}

less嵌套

运算

body {
width: 777px;
/* 宽度 = 宽度的一半 */
/* height: 388.5px; */
/* 除法 */
height: 777px/2;
/* 乘法 */
font-size: 10px * 2;
/* 加法 */ /*
运算符前面不能加空格
margin-left: 50px +7;
*/
margin-left: 50px+7; /* 减法 */
margin-right: 50px-8;
}

运算

flex布局

flex布局 = flex盒子 = 伸缩布局 = 伸缩盒子 = 弹性布局 = 弹性盒子

就是一种新一点的布局技术

传统布局 和 flex布局的比较

传统布局 大量的使用 定位 浮动 左右的margin 。。。

传统布局有哪些特点
  1. 兼容性好

  2. 使用比较繁琐

flex布局的特点
  1. 兼容性差一点,主要用在移动端上

  2. 使用简单方便

父项的属性

5个属性

设置主轴的方向

在flex布局中,一直是存在两个轴

主轴

默认情况下 主轴的方向 = x轴 从左到右

侧轴

默认情况下 侧轴的方向 = y 轴 从上到下

  1. 设置主轴的方向 flex-direction

    1. row 左 到 右

    2. column 上到下

    3. 。。。。

  2. 设置 主轴 子项的对齐方式 justify-content

    1. flex-start

    2. flex-end

    3. center

    4. space-between

    5. space-around

  3. 设置 侧轴 子项的对齐方式 -单行 align-items

    1. flex-start

    2. flex-end

    3. center

  4. 设置 侧轴 子项的对齐方式 -多行 align-content

    1. flex-start

    2. flex-end

    3. center

    4. space-between

    5. space-around

  5. 换行 属性 flex-wrap

    1. wrap;

子项的属性

  1. 设置子项 自己 在侧轴上的对齐方式 align-self

    1. flex-start

    2. flex-end

    3. center

  2. 设置子项 自己 在主轴上的排列顺序 order

    1. 默认值 都是 0

    2. 值越小越靠前

  3. 设置子项 占父项的宽度的比例 flex

    1. 按照比例来添加对应的值

补充

结构伪类选择器中选择前几个的公式

      a:nth-child(-n+3){
       border-bottom: 1px solid #fff;
       background-color: red;
    }

结构伪类选择器中选择后几个的公式

      a:nth-last-child(-n+3){
       border-bottom: 1px solid #fff;
       background-color: red;
    }

字体颜色继承

    color: inherit; 

当前的颜色currentColor

边框颜色等于字体的颜色

border: 1px solid currentColor

注意

  1. flex布局是可以和传统布局一起使用

    1. 当代码量一样的情况下 优先使用flex

    2. 某个效果,那个代码容易实现,就使用那个代码就可以了

  2. 某个布局效果 用什么样的技术实现得比较快 就使用哪个技术

移动开发day2_css预处理器_flex布局的更多相关文章

  1. C#中的预处理器指令

    C#中有许多名为“预处理器指令”的命令.这些命令从来不会转化为可执行代码中的命令,但会影响编译过程的各个方面. 例如,使用预处理器指令可以禁止编译器编译代码的某一部分.如果计划发布两个版本的代码,即基 ...

  2. CSS预处理器Sass(Scss)、Less、Stylus

    CSS 预处理编译器能让我成程序化其的方式编写CSS代码,可以引入CSS中没有的变量.条件.函数等特性,从而让代码更简单易维护,但一般按预处理器语法编写的代码无法直接在浏览器中运行,需用通过工具比如g ...

  3. CSS预处理器的对比 — Sass、Less和Stylus

    本文根据Johnathan Croom的<sass vs. less vs. stylus: Preprocessor Shootout>所译,整个译文带有我们自己的理解与思想,如果译得不 ...

  4. 轻松pick移动开发第二篇,rem布局

    一.为什么要使用rem布局 前面我写了flex布局的优点,分配伸缩盒容器中子盒子占的份数及排列方式,使其不受屏幕缩放的影响,使布局变得简单.然而,在有些时候,不可避免要给盒子设置高度的值,怎么让高度也 ...

  5. CSS 即将支持嵌套,SASS/LESS 等预处理器已无用武之地?

    最近,有一则非常振奋人心的消息,CSS 即将原生支持嵌套 -- Agenda+ to publish FPWD of Nesting,表示 CSS 嵌套规范即将进入规范的 FWPD 阶段. 目前对应的 ...

  6. 前端CSS预处理器Sass

    前面的话   "CSS预处理器"(css preprocessor)的基本思想是,用一种专门的编程语言,进行网页样式设计,然后再编译成正常的CSS文件.SASS是一种CSS的开发工 ...

  7. css预处理器sass使用教程(多图预警)

    css预处理器赋予了css动态语言的特性,如变量.函数.运算.继承.嵌套等,有助于更好地组织管理样式文件,以及更高效地开发项目.css预处理器可以更方便的维护和管理css代码,让整个网页变得更加灵活可 ...

  8. 关于前端CSS预处理器Sass的小知识!

    前面的话   "CSS预处理器"(css preprocessor)的基本思想是,用一种专门的编程语言,进行网页样式设计,然后再编译成正常的CSS文件.SASS是一种CSS的开发工 ...

  9. CSS预处理器Sass、LESS 和 Stylus

    CSS 预处理器技术已经非常的成熟,而且也涌现出了越来越多的 CSS 的预处理器框架.本文向你介绍使用最为普遍的三款 CSS 预处理器框架,分别是 Sass.Less CSS.Stylus. 首先我们 ...

随机推荐

  1. datatable动态列处理,重绘表格(敲黑板,划重点!!!我肝了一天半才彻底弄懂这个东西,TAT)

    datatable动态列处理,重绘表格 前言:至于动态列的绘画,我前面博客已经写过了,就是动态列的配置问题,不懂的去我博客看下,今天要写的呢,就是你已经写了一个动态列在datatable,现在你想重新 ...

  2. nginx预防常见攻击

    目录 nginx防止DDOS攻击 概述 攻击手段 配置 限制请求率 限制连接的数量 关闭慢连接 设置 IP 黑名单 设置IP白名单 小站点解决方案 nginx防止CC攻击 概述 主动抑制方法 应用举例 ...

  3. thinkphp封装方法添加跨域请求

    function wang_json($data){ //返回JSON数据格式到客户端,包含状态信息 header(' Content-Type:application/json; charset=u ...

  4. netcore开发windows普通服务(非Web)并一键发布到服务器

    如何开发并一键发布WindowsService项目(netcore普通项目) netcore下开发windows服务如果是web项目的话,由于aspnetcore本身是支持的,把默认的host.Run ...

  5. 使用jsp,tag提取字符串中的单词

    JSP中调用Tag在表单中输入字符串,提取其中的单词 参考代码:giveString.jsp <%@ page contentType="text/html; charset=GB23 ...

  6. 自然人税收管理系统扣缴客户端Sqlite数据库有密码的,如何破解读取呢

    https://www.cnblogs.com/Charltsing/p/EPPortal.html 有人问我能不能直接读自然人税收管理系统扣缴客户端,因为需要导出数据做处理. 看了一下,这个客户端是 ...

  7. 关于配置ssh免密码登录后,仍提示输入密码

    一.在A端创建密钥对: [root@A ~] -P '' 二.如果B机器没有.ssh和authorized_keys文件则创建这个文件夹和文件先,创建后要chown改成当前用户的所属者,其次也要改: ...

  8. SpringMVC model 多余字段 忽略

    spring-mybaits的model中如何通过注解忽略非数据库字段?——CSDN问答频道https://ask.csdn.net/questions/643534 ObjectMapper忽略多余 ...

  9. python3基本数据类型

    python3的基本数据类型: Number(数字).String(字符串).List(列表).Tuple(元组).Set(集合).Dictionary(字典) 不可变数据类型(3 个):Number ...

  10. 【linux】Python3.6安装报错 configure: error: no acceptable C compiler found in $PATH

    安装python的时候出现如下的错误: [root@master ~]#./configure --prefix=/usr/local/python3.6 checking build system ...