sass—使用自定义function和@each实现栅格布局
/*使用自定义function和@each实现栅格布局*/
@function buildLayout($num: 5){
$map: (defaultValue: 0); //不能直接生成col,需要设置一个默认值
$rate: percentage(1 / $num); //均分并取百分数
@for $i from 1 through $num{ //1为起始值,5为终止值遍历生成
$tmpMap: (col#{$i} : $rate * $i); //定义好key和value
$map: map-merge($map,$tmpMap); //写入新的map
}
$map:map-remove($map,defaultValue); //删除默认值
@return $map; //返回新的map
}
@mixin buildLayout($num: 5){
$map:buildLayout($num);
@each $key,$value in $map{
.#{$key}{
width: $value;
}
}
}
@debug buildLayout(); //因为有默认值所以可不传递参数,否则必须传
/*控制台输出结果: col1:20%,col2:40%,col3:60%,col4:80%,col5:100% */
@include buildLayout();//根据传递的参数来均分栅格,10就是10份
sass—使用自定义function和@each实现栅格布局的更多相关文章
- bootstrap(关于栅格布局)
栅格系统是通过行(.row)与列(column)的组合一起来创建页面布局的,所以只有列(column)可以作为行(row)的直接子元素,我们所要写的内容可以放在列里(column),不过在行的外层还需 ...
- iOS 瀑布流之栅格布局
代码地址如下:http://www.demodashi.com/demo/14760.html 一 .效果预览 二.确定需求 由下面的需求示意图可知模块的最小单位是正方形,边长是屏幕宽除去边距间隔后的 ...
- Bootstrap3.0 栅格系统背后的精妙魔法(Bootstrap3.0的栅格布局系统实现原理)
这个标题取的有点奇怪,怪我翻译的有问题吧.英文学平有限,有道词典和google翻译齐上阵是必须的.还好翻译的不是小说,对于技术文章,还是能勉强翻过来的. 本文主要讲解了Bootstrap3.0的栅格布 ...
- Bootstrap3.0的栅格布局系统实现原理
这个标题取的有点奇怪,怪我翻译的有问题吧.英文学平有限,有道词典和google翻译齐上阵是必须的.还好翻译的不是小说,对于技术文章,还是能勉强翻过来的. 本文主要讲解了Bootstrap3.0的栅格布 ...
- CSS栅格布局
CSS栅格布局 认识栅格布局 CSS的栅格布局也被称为网格布局(Grid Layout),它是一种新兴的布局方式. 栅格布局是一个二维系统,这意味着它可以同时处理列和行,与弹性布局相似,栅格系统也是由 ...
- 浅谈css的栅格布局
栅格布局想必大家都很了解,我们做页面开发的时候,往往对页面板式的要求很高,如何对各个区域的内容排版,并使之对齐是我们的一大难题.而栅格系统就是我们排版的利器,他支持自动对齐.自动计算边距.流式布局等优 ...
- Bootstrap栅格布局系统的特点
栅格布局系统的特点: (1)所有的行必须放在容器中: .container或.container-fluid (2)分为多行(row),一行中平均分为12列(col) (3)网页内容只能放在列(col ...
- CSS:谈谈栅格布局
检验前端的一个基本功就是考查他的布局.很久之前圣杯布局风靡一时,这里就由圣杯布局开始,到最流行的bootstrap栅格布局. 圣杯布局 圣杯布局是一种三列布局,两边定宽,中间自适应: * { box- ...
- bootstrap笔记-栅格布局
1. .clearfix 这个类可以在栅格布局中起到一个不占空间的clear的作用,如下:可以尝试带.clearfix和不带它的区别 <div class="container-f ...
随机推荐
- 一、Win10搭建IIS
一.控制面板-启动或关闭Windows功能 二.找到Internet Information Services项-全勾选 点击确定 三.在浏览器地址栏输入:localhost之后显示下面页面,证明安装 ...
- BZOJ4977[Lydsy1708月赛]跳伞求生——贪心+堆+模拟费用流
题目链接: 跳伞求生 可以将题目转化成数轴上有$n$个人和$m$个房子,坐标分别为$a_{i}$和$b_{i}$,每个人可以进一个他左边的房子,每个房子只能进一个人.每个房子有一个收益$c_{i}$, ...
- 【BZOJ5499】[2019省队联测]春节十二响(贪心)
[BZOJ5499][2019省队联测]春节十二响(贪心) 题面 BZOJ 洛谷 题解 如果是一条折链,显然维护两侧的值,每次两个堆分别弹出一个\(max\)然后合并一下,最后再放回去就可以了. 那么 ...
- 自定义一个IOC框架
要实现的功能: 将对象的实例化交给自定的ioc容器. 通过注解的方式对接口进行依赖注入 通过getBean("userName")方法那到对象,使用对象的方法 首先,创建一个对象, ...
- Time travel HDU - 4418(高斯消元)
Agent K is one of the greatest agents in a secret organization called Men in Black. Once he needs to ...
- Linux硬盘性能测试工具 - FIO
1.安装:方法一:直接用指令yum -y install fio方法二:如果方法一不可行则,在官网http://freshmeat.net/projects/fio/下载fio的安装包.安装方法很简单 ...
- java jdbc ResultSet结果通过java反射赋值给java对象
在不整合框架的情况下,使用jdbc从数据库读取数据时都得一个个的get和set,不仅累代码还显得不简洁,所以利用java的反射机制写了一个工具类,这样用jdbc从数据库拿数据的时候就不用那么麻烦了. ...
- pytest 9 pytest-datadir读取文件信息
安装:pip install pytest-datadir 介绍:用于操作测试数据目录和文件的插件.pytest-datadir他会寻找包含测试模块名字的文件夹或者全局的一个文件夹名字为data下的数 ...
- Vue过滤器
局部定义: var vm = new Vue({ el:"#app", data:{ proData:'' }, filters: { pro_color(index){ swit ...
- Token防止表单重复提交和CSRF攻击
Token,可以翻译成标记!最大的特点就是随机性,不可预测,一般黑客或软件无法猜测出来. Token一般用在两个地方: 1: 防止表单重复提交 2: anti csrf攻击(Cross-site re ...