2020-03-20 rem+less(十三)

rem布局

  • 主要用于解决不同屏幕的适配问题,rem能够等比例适配所有屏幕
  • 流式布局:虽然可以让各种屏幕都适配,但是显示效果不友好,只有较少的尺寸可以实现完美的效果(目前使用流式布局的公司较多:亚马逊,京东,携程)
  • rem布局:rem能够适配所有的屏幕,与less配合使用效果较好(目前使用的公司:淘宝,苏宁)

rem是什么

  • rem是指相对于根元素的字体大小的单位,是一个相对单位
  • 使用px的地方都可以使用rem替换,1rem=html的font-size的大小
  • 一旦html的font-size发生了改变,那么rem的大小也会发生改变

rem与高度自适应

  • 因为rem的基准点是根元素html的字体大小,因此我们只需要设置不同屏幕的html的font-size的大小就可以达到适配的目的

媒体查询

  • 媒体查询是css3提出的一个新的属性,通过媒体查询可以查询到screen的宽高,从而指定某个宽度区间的网页布局

语法:


@media screen and (条件) {

满足条件加载的css内容

}

条件说明:

  1. min-width:320px ; 最小宽为320(320以上的设备)
  2. max-width:640px;最大宽为640(640以下的设备)
  3. width:540px; 宽度等于540

注意点:

  1. 媒体查询仅仅提供一个条件,不会提升权重,所以一般媒体查询写在最下面
  2. and前后一定要有空格

rem与媒体查询

  • 使用rem配合媒体查询可以适配多个终端
  • px转rem的公式:px/html的font-size的值
  • 动态计算不同屏幕的对应的font-size的值:当前屏幕/(设计图的宽/基于设计图的font-size)

举例:

750的设计图,50的font-size;要求写出375的屏幕

计算:750 / 50 = 375 / 当前屏幕对应的font-size

LESS

学习网站:官网http://lesscss.org/ 中文网http://lesscss.cn/

简介

  1. less本质上是一个超集,具备css的一切功能,同时具备css不具备的功能
  2. 浏览器不认识less,使用插件easy less,转译为css,引用css文件让浏览器识别、

安装插件(vscode)

点击扩展——搜索easy less——安装——重新加载——安装成功后,当我们编写less并保存的时候,会自动在当前目录下生成一个同名css文件

LESS语法

注释

  1. // less的注释,css文件用不了,生成的css文件中不会显示
  2. /* */ 属于css注释,因此会编译到css文件中

变量(可以变化的量,方便维护)

  • 格式:@自定义变量名:对应的取值;

@mainColor: yellow;

.box {

color: @mainColor;

background-color: @mainColor;

border: 1px solid @mainColor;

}

嵌套(混入)

  • 可以在一个选择器中嵌套另一个选择器来实现继承,可以减少代码量,是代码更加清晰
  1. 后代选择器 直接写在大括号里面即可
  2. 子代选择器 直接 > 即可
  3. 交集选择器 使用&符号,表示自己
  4. 并集选择器 直接使用 ,
  5. 伪类选择器 使用&符号表示自己,例如&::hover
  6. 伪元素选择器 使用&符号表示自己 (与伪类选择器一致)


    image.png

less数学运算

  • less可以支持运算

// less可以拥有计算能力

.box {

width: 100 + 200px;

height: 50 * 2px;

font-size: 320 / 15px;

}

less函数的使用

  • 有一些公共类我们可以提取出来,用的时候调用

步骤

  1. 声明 .函数名(){公共的css}
  2. 使用 .box{ .函数名(); };

特点:

  1. 函数不会被编译到css中
  2. 函数可以在选择器中调用

less函数的参数传递

  • 参数的传递过程:调用函数的时候将函数小括号的值传递给函数里面的变量,如果调用函数的小括号里面没有值会使用默认值

// 声明函数

.br(@val: 20px) {//默认值写法@函数名:数值

/* 标准写法 */

border-radius: @val;

/* 私有前缀的写法 */

-webkit-border-radius: @val;

/* 私有前缀的写法 */

-ms-border-radius: @val;

/* 私有前缀的写法 */

-o-border-radius: @val;

/* 私有前缀的写法 */

-moz-border-radius: @val;

}

.box {

// 调用函数

.br(5px);

}

.box2 {

.br(10px);

}

引入less文件

  • 一个页面需要引入多个css文件,现在我们在less文件中引入多个less文件,这样就可以在html页面只引入一个css文件

格式:

@import '需要引入的less文件的路径';

注意:一般引入less文件写在最前方,放置覆盖

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,463评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,868评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,213评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,666评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,759评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,725评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,716评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,484评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,928评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,233评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,393评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,073评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,718评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,308评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,538评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,338评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,260评论 2 352

推荐阅读更多精彩内容