Progressive disclosure defers advanced or rarely used features to a secondary view, making applications easier to learn and less error-prone.
Progressive disclosure is a powerful tool in interaction design, but it's often used precariously.
<!DOCTYPE html> | |
<html> | |
<head> | |
<title>Layout Prototype</title> | |
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"> | |
<style> | |
.min-h320 { min-height: 320px } | |
.mb2 { margin-bottom: 30px } | |
.placeholder { | |
height: 0; |
var gulp = require('gulp'); | |
var fs = require('fs'); | |
// Suitcss | |
var suit = require('suitcss-preprocessor'); | |
gulp.task('suit', function() { | |
var src = fs.readFileSync('./src/base.css', 'utf8'); | |
var bundle = suit(src, {}); | |
fs.writeFileSync('./base-suitcss.css', bundle); |
" Vim colour scheme | |
hi clear | |
set background=light | |
if exists("syntax_on") | |
syntax reset | |
endif | |
let g:colors_name = 'jxn5' |
var through = require('through2'); | |
var gutil = require('gulp-util'); | |
module.exports = function() { | |
var transform = function(file, enc, cb) { | |
var name = file.relative.split('.')[0]; | |
var contents = String(file.contents).replace(/\r?\n|\r/g, ' '); |
module.exports = function(elements, options) { | |
var options = options || {}; | |
var baseline = options.baseline || 16; | |
var paddingY = options.paddingY || 0; | |
for (var i = 0; i < elements.length; i++) { | |
var content = elements[i].textContent; |
hr { | |
height: .5rem; | |
margin-bottom: .9375rem; | |
border-style: none; | |
border-bottom: .0625rem solid; | |
} |
.hover-group { | |
.hover-item { | |
color: gray; | |
} | |
&:hover .hover-item { | |
color: blue; | |
} | |
} |
gulp.task('js-sprite', function() { | |
return gulp.src('./icons/*.svg') | |
.pipe(concat('js-sprite.svg')) | |
.pipe(header('<svg xmlns="http://www.w3.org/2000/svg">')) | |
.pipe(footer('</svg>')) | |
.pipe(svgmin([{cleanupIDs: false}])) | |
.pipe(gulp.dest('./sprite')); | |
}); |