结合Compass库和工作总结,列出了项目中最为常用的SASS片段。内容收集于网络,我进行了简单整理并测试正常,可以根据实际项目情况进行取舍,值得学习或直接应用,感谢!

//重置浏览器默认样式
@import "compass/reset";
//使用粘滞页脚
@import "compass/layout/sticky-footer";
<div id="main">
<div id="main-footer"></div>
</div>
<div id="footer">
Footer content goes here.
</div>
@include sticky-footer(54px, "#main", "#main-footer", "#footer");
// Github: https://github.com/zenozeng/fonts.css    @extend %font-hei;     通用字体的处理方法
%font-hei {
font-family: "Helvetica Neue", Helvetica, "Nimbus Sans L", Arial, "Liberation Sans", "Hiragino Sans GB", "Source Han Sans CN Normal", "Microsoft YaHei", "Wenquanyi Micro Hei", "WenQuanYi Zen Hei", "ST Heiti", SimHei, "WenQuanYi Zen Hei Sharp", sans-serif;
}
%font-kai {
font-family: Baskerville, Georgia, "Liberation Serif", "Kaiti SC", STKaiti, "AR PL UKai CN", "AR PL UKai HK", "AR PL UKai TW", "AR PL UKai TW MBE", "AR PL KaitiM GB", KaiTi, KaiTi_GB2312, "TW\-Kai", serif;
}
%font-song {
font-family: Georgia, "Nimbus Roman No9 L", "Songti SC", STSong, "AR PL New Sung", "AR PL SungtiL GB", NSimSun, SimSun, "TW\-Sung", "WenQuanYi Bitmap Song", "AR PL UMing CN", "AR PL UMing HK", "AR PL UMing TW", "AR PL UMing TW MBE", serif;
}
%font-fang-song {
font-family: Baskerville, "Times New Roman", "Liberation Serif", STFangsong, FangSong, FangSong_GB2312, "CWTEX\-F", serif;
}
%font-ming {
font-family: Georgia, "Nimbus Roman No9 L", "AR PL UMing CN", "AR PL UMing HK", "AR PL UMing TW", "AR PL UMing TW MBE", PMingLiU, MingLiU, serif;
}
// Compass最常用的一些模块
@import "compass/css3/background-size"; //@include background-size; default > background-size:100% auto;
@import "compass/css3/border-radius"; //@include border-radius; default > border-radius:5px;
@import "compass/css3/box-shadow"; //@include box-shadow; default > box-shadow:0px 0px 5px #333333;
@import "compass/css3/box-sizing"; //@include box-sizing(border-box);
@import "compass/css3/inline-block"; //@include inline-block;
@import "compass/css3/opacity"; //@include opacity(.4);
// 设置宽高
@mixin size($width, $height:$width){
width: $width;
height: $height;
}
// rgba的兼容处理方案
@mixin backgroundTransparent($bgcolor,$opacity,$support-for-ie:true){
background-color:rgba($bgcolor,$opacity);
@if $support-for-ie{
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#{ie-hex-str(rgba($bgcolor,$opacity))},endColorstr=#{ie-hex-str(rgba($bgcolor,$opacity))});
:root & {
filter:none;
}
}
}
// @include boxCenter(center,false);使用css3 box-align/box-pack水平垂直居中
@mixin boxCenter($pack:center, $align: center) {
@if($align !=false) {
-webkit-box-align: $align;
box-align: $align;
}
@if($pack !=false) {
-webkit-box-pack: $pack;
box-pack: $pack;
}
display:-webkit-box;
display:box;
}
//@include boxClamp(3); >> suitable Mobile and no height        多行超出设置点点点,适用于webkit内核的浏览器
@mixin boxClamp($v:1){
overflow:hidden;
-webkit-line-clamp: $v;
line-clamp: $v;
-webkit-box-orient: vertical;
box-orient: vertical;
display:-webkit-box;
display:box;
}
//Button Sizes        按钮,具体使用时具体修改
@mixin button-size($padding,$line-height,$border-radius){
padding: $padding;
line-height: $line-height;
border-radius: $border-radius;
}
//Thanks http://codepen.io/zhouwenbin/pen/xbVjPb  面包屑(两头)
//<span class="breadcrumb-right">breadcrumb</span> @include breadcrumb(#425164,#fff,16px,left);
//http://lugolabs.com/caret          各种三角,这个网址可以手动调整并在线实时预览
//@include caret(absolute,9px,3px,right,red,#fff);
//@include center-translate($direction: both);    利用translate可以实现未知宽高的东东水平/垂直居中
@mixin center-translate($direction: both) {
position: absolute;
@if $direction == both {
top: 50%;
left: 50%;
-webkit-transform: translate3d(-50%, -50%, 0);
transform: translate3d(-50%, -50%, 0);
}
@else if $direction == horizontal {
left: 50%;
-webkit-transform: translate3d(-50%, 0, 0);
transform: translate3d(-50%, 0, 0);
}
@else if $direction == vertical {
top: 50%;
-webkit-transform: translate3d(0, -50%, 0);
transform: translate3d(0, -50%, 0);
}
}
//@include ellipsis-overflow;    文字溢出点点点
@mixin ellipsis-overflow {
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
display: inline-block;
}
//@include float;  浮动
@mixin float($direction: left,$support-for-ie:false){
float: $direction;
@if $support-for-ie{
_display: inline;
}
}
//@include inline-block;  行内元素display:inline-block;的兼容方案
@mixin inline-block($alignment: middle,$support-for-ie:true) {
display: inline-block;
@if $alignment and $alignment != none {
vertical-align: $alignment;
}
@if $support-for-ie {
*vertical-align: auto;
zoom: 1;
*display: inline;
}
}
//@include opacity;  opacity的兼容方案
@mixin opacity($opacity:.65,$support-for-ie:true) {
opacity: $opacity;
@if $support-for-ie{
$opacity-ie: $opacity * 100;
filter: alpha(opacity=$opacity-ie); //IE8
}
}
//@include position(absolute,top 10px right 20px bottom 20px left 20px);  suitable no width/no height
@mixin position($position,$args){
@each $o in top right bottom left {
$i: index($args, $o);
@if $i and $i + 1 <= length($args) and type-of(nth($args, $i + 1)) == number {
#{$o}: nth($args, $i + 1);
}
}
position: $position;
}
//Thanks: https://github.com/bitmanic/rem/blob/master/stylesheets/_rem.scss by @benfrain (https://github.com/benfrain)
//Thanks http://codepen.io/zhouwenbin/pen/bNpMov  single arrow

常用SASS封装的更多相关文章

  1. AppDelegate减负之常用三方封装 - 友盟分享 / 三方登录篇

    之前完成了 AppDelegate减负之常用三方封装 - 友盟推送篇: http://www.cnblogs.com/zhouxihi/p/7113511.html 今天接着来完成 - 友盟分享和三方 ...

  2. React Native之TextInput的介绍与使用(富文本封装与使用实例,常用输入框封装与使用实例)

    React Native之TextInput的介绍与使用(富文本封装与使用实例,常用输入框封装与使用实例) TextInput组件介绍 TextInput是一个允许用户在应用中通过键盘输入文本的基本组 ...

  3. js实现第一次打开网页弹出指定窗口(常用功能封装很好用)

    js实现第一次打开网页弹出指定窗口(常用功能封装很好用) 一.总结 1.常用功能封装:之前封装的cookie的操作函数非常好用,我自己也可以这么搞 二.js实现第一次打开网页弹出指定窗口 练习1:第一 ...

  4. subprocess以及常用的封装函数

    从Python 2.4开始,Python引入subprocess模块来管理子进程,以取代一些旧模块的方法:如 os.system.os.spawn.os.popen.popen2..commands. ...

  5. php文件操作(最后进行文件常用函数封装)

    文件信息相关API $filename="./1-file.php"; //filetype($filename):获取文件的类型,返回的是文件的类型 echo '文件类型为:', ...

  6. android常用对话框封装

    在android开发中,经常会用到对话框跟用户进行交互,方便用户可操作性:接下来就对常用对话框进行简单封装,避免在项目中出现冗余代码,加重后期项目的维护量:代码如有问题欢迎大家拍砖指正一起进步. 先贴 ...

  7. 常用IC封装技术介绍

    1.BGA(ball grid array)球形触点陈列,表面贴装型封装之一.在印刷基板的背面按陈列方式制作出球形凸点用 以 代替引脚,在印刷基板的正面装配LSI 芯片,然后用模压树脂或灌封方法进行密 ...

  8. iOS常用的封装方法

    做开发也有一段时间了,看了好多大神的代码,总体感觉他们写的代码简洁,好看,然而在对比下我写的代码,混乱,无序,简直不堪入目啊! 总体来说大神们的代码封装的都比较好,对一个项目要重复用到的代码他们都会封 ...

  9. .Net Excel操作之NPOI(二)常用操作封装

    一.Excel数据导出常用操作 1.指定表头和描述 2.指定数据库中读出的数据集合 二.ExcelExport封装 /// <summary> /// Excel常用的表格导出逻辑封装 / ...

随机推荐

  1. Visual Studio 2015官方下载 秘钥破解

    微软刚刚为开发人员奉上了最新大礼Visual Studio 2015正式版.如果你是MSDN订阅用户,现在就可以去下载丰富的相关资源.如果你指向体验一把尝尝鲜,微软也是很慷慨的. Visual Stu ...

  2. [原创] 浅谈开源项目Android-Universal-Image-Loader(Part 3.1)

    最近,总算有时间去做些平时喜欢而没空去做的事情.一直觉得项目中使用的Image Loader适用性不强,昨晚在github随便逛逛,发现一个开源项目Android-Universal-Image-Lo ...

  3. 转:HDMI介绍与流程

    HDMI介绍与流程   HDMI,全称为(High Definition Multimedia Interface)高清多媒体接口,主要用于传输高清音视频信号. HDMI引脚: HDMI有A,B,C, ...

  4. unbuntu16.04上python开发环境搭建建议

    unbuntu16.04上python开发环境搭建建议  2017-12-20  10:39:27 推荐列表: pycharm: 可以自行破解,但是不推荐,另外也不稳定 pydev+eclipse: ...

  5. 移动app性能测试(待完善)

    移动终端性能测试是测试手机终端是否符合特定性能指标的测试,包括有:内存.CPU.电量.流量.流畅度.时延等 测试准备:测试账号.测试需求.测试用例.待测手机.待测应用包.测试工具.测试电脑 1.  时 ...

  6. netback的tasklet调度问题及网卡丢包的简单分析

    近期在万兆网卡上測试,出现了之前千兆网卡没有出现的一个现象,tasklet版本号的netback下,vm进行发包測试,发现vif的interrupt默认绑定在cpu0上,可是vm发包执行时发现host ...

  7. hadoop基础----hadoop理论(四)-----hadoop分布式并行计算模型MapReduce具体解释

    我们在前一章已经学习了HDFS: hadoop基础----hadoop理论(三)-----hadoop分布式文件系统HDFS详细解释 我们已经知道Hadoop=HDFS(文件系统,数据存储技术相关)+ ...

  8. 高性能流媒体服务器EasyDSS前端重构(三)- webpack + vue + AdminLTE 多页面引入 element-ui

    接上篇 接上篇<高性能流媒体服务器EasyDSS前端重构(二) webpack + vue + AdminLTE 多页面提取共用文件, 优化编译时间> 本文围绕着实现EasyDSS高性能流 ...

  9. 配置springMVC时出现的问题

    配置springMVC时出现的问题 项目结构如图:

  10. spring mvc 及NUI前端框架学习笔记

    spring mvc 及NUI前端框架学习笔记 页面传值 一.同一页面 直接通过$J.getbyName("id").setValue(id); Set值即可 二.跳转页面(bus ...