is a style sheet language used for describing the presentation of a document written in a markup language.
Cascading Style Sheet
1996 - CSS 1
1998 - CSS 2
2011 - CSS 2.1
2011/2013 - CSS 3
Story
W3C
References
link rel
@import
in page
in line
How to use
#idname
.classname
ID and class
Pseudo class
li:first-child, li:last-child
a:link,a:visited
a:hover, a:active, a:focus
li:nt-child(2)
:after
:before
p:first-letter
p:first-line
Pseudo element
Specificity rules
CSS Specificity
div p = son
div > p = direct son
div + p = after brother
p[title=Example] = attribute
Selectors
color name = red
RGB value = rgb(255, 0, 0)
HEX value = #ff0000
Color
background:white url('image') no-repeat 0% 0%;
Background
Sprite and Base64
border: 1px solid green
Border
color, letter-spacing, line-height, text-align, text-decoration, text-indent, text-shadow, text-transform, word-spacing, vertical-align
Text
Font
font-family, font-style, font-weight,
text-transform, text-align, text-decoration, text-indent, text-orientation, letter-spacing, word-spacing, word-break
Font
opacity: 1;
filter: alpha(opacity=100);
Opacity
display: block, inline, inline-block, none
visibility: visible, hidden
Display and Visibility
min-height, max-height
min-width, max-width
Min/Max Height/Width
hidden, auto, scroll
Overflow
content, margin, padding, border
outline
Box Model
box-sizing: border-box
Box Model
static
relative
absolute
fixed
Position
float: left
float: right
float: none
clear: left
clear: right
clear: both
Float e Clear
2004 - Born Web Hypertext Application Technology Working Group
2008 - HTML 5 first public draft
2014 - Recommendation
2016 - HTML 5.1 Candidate Recommendation
Story
all new tags as block element
custom tag is permitted but not validate
HTML5 form and old browser:
https://code.google.com/archive/p/webforms2/
Browser support
Modernizr
References
section, article, aside, main, details, dialog, footer, header, nav, progress, time, figcaption, figure
New elements
color, date, datetime, datetime-local, email, month, number, range, search, tel, time, url, week
New input type
audio, embed, source, track, video
HTML 5 media
svg
HTML 5 graphic
June 2011: CSS Color Module
September 2011: CSS Namespaces Module
September 2011: Selectors
June 2012: Media Queries
November 2013: CSS Style Attributes
Story
Vendor prefix
border-radius, multiple background,
text & box shadow
Style effects
Gradients
white-space, text-overflow,
word-wrap, word-break,
Text properties
calc(x - y)
ex:
width: calc(100% - 50px);
Calculation
translate
rotate
scale
skewX
skewY
2D Transform
rotateX
rotateY
rotateZ
3D Transform
transition, transition-delay,
transition-duration, transition-property,
transition-timing-function
Transition
An animation lets an element gradually change from one style to another.
@keyframes
Animation
animation-name
animation-delay
animation-direction
animation-duration
animation-fill-mode
animation-iteration-count
animation-play-state
animation-timing-function
Animation
Animate.css
width and height of the viewport
orientation (landscape or portrait mode)
resolution
Mediaquery
Atomic Design
OOCSS
BEM
SMACSS
The better way to keep CSS maintainable, reliable and modular
CSS Pre-processor
SASS Install
compile:
sass input.scss output.css
watch:
sass --watch app/sass:public/stylesheets
SASS Commands
$font-stack: Helvetica, sans-serif;
$primary-color: #333;
...
font-family: $font-stack;
color: $primary-color;
SASS Variables
SASS Nesting
@import _theme.scss
@import _base.scss
@import _mod_table.scss
SASS Partial and Import
SASS Mixin
SASS Extend
SASS Operators
LEAN UX
(Jeff Gothelf with Josh Seiden)
REFACTORING HTML
(Elliotte Rusty Harold)
DESIGNING NEXT GENERATION
WEB PROJECTS WITH CSS3
(Sandro Paganotti)
References
prometeia@extrategy.it