Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The evolution of CSS - 2
Search
Mattia Larentis
February 05, 2013
Programming
1
120
The evolution of CSS - 2
Mattia Larentis
February 05, 2013
Tweet
Share
More Decks by Mattia Larentis
See All by Mattia Larentis
Going isomorphic with Django and React
nostalgia
0
540
django loves gulp
nostalgia
0
170
orrfuscation
nostalgia
0
140
The evolution of CSS
nostalgia
4
310
jQuery
nostalgia
4
440
Other Decks in Programming
See All in Programming
15年目のiOSアプリを1から作り直す技術
teakun
1
600
Claude Code、ちょっとした工夫で開発体験が変わる
tigertora7571
0
200
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
Unity6.3 AudioUpdate
cova8bitdots
0
110
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
330
SourceGeneratorのマーカー属性問題について
htkym
0
140
AHC061解説
shun_pi
0
320
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
1.6k
AIコーディングの理想と現実 2026 | AI Coding: Expectations vs. Reality 2026
tomohisa
0
1k
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
14
7.9k
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
150
Geminiの機能を調べ尽くしてみた
naruyoshimi
0
200
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
460
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
230
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
63
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
63
53k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
240
Navigating Weather and Climate Data
rabernat
0
130
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
340
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
280
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
600
Transcript
Mattia Larentis - @spiritualguru the evolution of css
a long time ago...
1980s
Nerdz
CERN
Share documents
HTML HyperText Markup Language
tags!
paragraphs titles bulleted lists
1993
people began to talk about STYLE
W3C World Wide Web Consortium
CSS Cascading Style Sheet
1996
version 1.0
None
from 1998 to 2004
version 2.0
new Browsers
None
None
None
WIN
TODAY
version 3.0
New Features
Border Radius 2D Transforms Box Shadow RGBA Colors
but...
CSS SUCKS
Problems
vars
nesting
performance
is there a solution?
YES!
preprocessing
A system written in another language that adds lots of
tasty goodies that don’t exists natively, while still spitting out something a browser can understand
{LESS} The dynamic stylesheet language.
Sass Syntactically Awesome StyleSheets
stylus Expressive, dynamic, robust CSS
None
ok... but... why?
it will make you CSS DRY
it will save your time
it will make your code easy to maintain
it will make your CSS more organized
it’s fun
talk is cheap, show me the code
START
<link rel="stylesheet/less" type="text/css" href="styles.less" />
<script src="less.js"></script>
IMPORT
@import "vars";
VARS
@border: 1px; @color: #111; @red: #842210;
.my-class { color: @color; border-left: @border; border-right: @border; }
.my-class { color: #111; border-left: 1px; border-right: 1px; }
OPERATIONS
.my-class { color: (@color + #030); border-right: (@border * 2);
}
.my-class { color: #114411; border-right: 2px; }
MIXIN
.border-radius (@radius: 5px) { -webkit-border-radius: @radius; -moz-border-radius: @radius; -ms-border-radius: @radius;
-o-border-radius: @radius; border-radius: @radius; }
.my-class { .border-radius(2px); } .another-class { .border-radius; }
.my-class { -webkit-border-radius: 2px; -moz-border-radius: 2px; -ms-border-radius: 2px; -o-border-radius: 2px;
border-radius: 2px; }
.another-class { -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px;
border-radius: 5px; }
NESTING
.my-class { h1 { font-weight: bold; } p { font-size:
12px; a { text-decoration: none; &:hover { color: @red; } } } }
.my-class h1 { font-weight: bold; } .my-class p { font-size:
12px; } .my-class p a { text-decoration: none; } .my-class p a:hover { color: #842210; }
Questions?!?
Mattia Larentis http://larentis.eu
[email protected]
@spiritualguru github.com/nostalgiaz