Chapter 1: Whitespace, HTML elements, and CSS selectors
- BROWSER WHITESPACE
- GETTING STARTED USING CSS
Chapter 2: Normal document flow, block elements, and inline elements
- NORMAL DOCUMENT FLOW
- CONCLUSIONS AND SUMMARY
Chapter 3: CSS element selectors vs class selectors
- STYLING BLOCK-LEVEL ELEMENTS
- CONCLUSIONS
Chapter 4: Controlling document flow via display property
- CONTROLLING DOCUMENT FLOW USING CSS
displayPROPERTY - CONCLUSIONS
Chapter 5: Exploring the differences between block and inline elements
- When is it reasonable to not add a CSS class?
- Setting
<span>elements todisplay: block - Are elements on our page going to behave like block-level or inline elements?
- Flipping the behavior of inline and block-level elements
- Conclusions
Chapter 6: The box model
- Previewing the box model in the browser
- Visually mimicking the box model using CSS
- Controlling the box model
- Specifying separate CSS classes for individual
paddingandmarginproperties
Chapter 7: CSS Positioning
- What is CSS positioning?
- Relative positioning with
top,right,bottomandleftvalues - Practicing relative positioning
Chapter 8: Relative, absolute, and fixed positioning
- Position relative vs position absolute
- An example to practice absolute positioning
- Position parent element
relativeand child elementabsolute - A mini-test on absolute elements inside relative elements
- CSS id syntax
- Working with
position: fixed - Conclusions for position fixed
Chapter 9: Images and floats in CSS
- Images are incline elements
- Floating images left and right
- Issues with floats and layouts
- Non-floated parent floating a child div
- Clearing floats
- Possible values of the
clearproperty - Why use
clear: bothoverclear: leftorclear: right - Practical examples of clearing floats
- The clearfix hack
Chapter 10: CSS selectors and CSS targeting revisited
- CSS Specificity
- CSS specificity rules
- The most commonly used CSS selectors
- The universal selector,
* - The class selector
- Grouped class selectors
- The descendant class selector
- The element selector
- The id selector
- The immediate child selector
- Practicing slightly more complex selectors
- Pseudo-classes in CSS
- The
::beforeand::afterpseudo elements
Chapter 11: Building the first layout
- The mockup
- Our layout’s HTML code
- Our layout’s CSS code
- Using the
calc()function in CSS - Grouping CSS selectors to optimize our CSS code
- Conclusion
Chapter 12: Responsive web layouts with media queries
- How media queries work
Chapter 13: Converting our first layout into a responsive one
- What is flexbox
- Understanding our simple flexbox-based non-responsive website layout
- Step 1: Give our site some structure
- Step 2: Add flexbox styles to our HTML structure
- Step 3: Setting the inner wrapping
<div>todisplay: flex - Step 4: Stretching the
<aside>and<main>to 100% of the wrapping div - Step 5: Stretching the sidebar and main content area vertically
- Making our layout responsive with media queries
Chapter 14: CSS resets and Emmet
- What lead to the appearance of CSS resets
- User agent stylesheets
- Removing styles from codingexercises.com
- Popular CSS resets
- Should we use CSS resets
- Emmet
- What is Emmet?
- How to use Emmet
- How Emmet abbreviations work
- The
>in Emmet - The
{}in Emmet - The
+in Emmet - The
()and*in Emmet - The
$symbol in Emmet
Chapter 15: Column-based CSS layouts
- A very brief history of CSS layouts
- In 2005, table-based layouts were still a thing
- The invention of the CSS column grid systems
- Building our own version of 960 column grid system
- Building our 12 columns
- Making our 12 columns line up next to each other
- Making our CSS column grid responsive
- Adding media queries for column classes
- Conclusion
Chapter 16: An overview of popular CSS frameworks
- Benefits of CSS frameworks
- Disadvantages of CSS frameworks
- Bootstrap, Bulma, and MDL
- Bootstrap front-end framework
- Bulma CSS framework
- MDL framework
Chapter 17: Introduction to SCSS
- A Sass demo
- Benefits of using Sass/SCSS
- Initializing a new project to test node-sass
- Installing node-sass
- Running node-sass
- Compiling our SCSS file
Chapter 18: Build your own micro CSS framework
- The structure of our CSS micro-framework
- 1. A CSS reset
- 2. Layout classes
- 3. Widths, heights, margins, and paddings
- 4. Typography
- 5. Effects (such as colors, shadows, or opacity)
- 6. Column-grid
Chapter 19: Building a layout with our micro CSS framework
- Adding HTML structure
- Adding the column grid and background color CSS classes to our HTML
Chapter 20: Building a layout with Bootstrap 4
- Adding the HTML structure
- Adding Bootstrap 4.3.1 styles
- Vertically stretching the available screen space to fit the screen
- Using Bootstrap 4 components
Chapter 21: CSS transitions, animations, and transforms
- An introduction to transitions in CSS
- A definition of CSS transitions
- Adding two transitions on a same HTML element
- Introduction to CSS animations
- Writing a simple animation in CSS
- Adding the
forwardsvalue - Running two animations on the same HTML element based on the state
- Adding multiple steps to our animations
- CSS transforms
- Conclusion
Chapter 22: CSS variables
- Why CSS variables
- Using CSS variables
- Starting to convert the layout example using CSS variables
- Adding variables to the entire layout
Chapter 23: Introducing the CSS grid
- Flexbox is one-dimensional
- Flexbox is one-dimensional, but you can nest it to make it become two-dimensional
- Introduction to CSS grid
- Using
frunits instead of hard-coded pixel values - Building a simple layout using CSS grid
- Improving our layouts with grid-template-areas
- Making the middle row of a grid layout extend the full height of the available screen
Chapter 24: CSS tips and tricks for beginners
- Tip no. 1: Center a div with the CSS declaration of
margin: 0 auto - Tip no. 2: Never override a framework CSS class directly!
- Tip no. 3: Narrow containers in Bootstrap
- Tip no. 4: To style a navigation, use the
<ul>element - Tip no. 5: Avoid over-qualified selectors
- Tip no. 6: How to add a shadow to a div
- Tip no. 7: How to add a shadow to text in CSS
- Tip no. 8: You can add nice effects with hover and transition
- Tip no. 9: Using rgb alpha and hsl alpha colors
- Tip no. 10: Using CSS filters, you can quickly turn an image grayscale
