Web Programming @ MIPT, 2015-2016

Markovtsev Vadim

HTML5 (semantics)

Web Programming @ MIPT, 2015-2016

What is HTML?

<section class="slide"><div>
  <h2>What is HTML?</h2>
  <ul>
    <li><a href="https://en.wikipedia.org/wiki/HTML"> HyperText Markup
      Language</a> is a notation of tags to create web pages.</li>
    <li>"Hyper" means that one page can reference other pages.</li>
  </ul>
</div></section>

HTML history

HTML development

HTML resources

Editors

Code playgrounds

Interactively test markup/scripts and share your experiments with others

Browser's developer tools

Press Ctrl + Shift + C

Web page structure

<html>
  <head>
    <link rel="stylesheet" href="page.css">
    <style>...</style>
  </head>
  <body>
    <!-- ... -->
    <script src="page.min.js"></script>
  </body>
</html>

HTML tag

Web page example

HTML tags overview

Useful advice on Habrahabr

All of these are useless without CSS - please wait for the next part!

More real world web page example (template)

HTML5 Boilerplate

Media tags

MathML

The way to include mathmetical formulas into HTML documents

Build pipeline

  1. Produce CSS files (from SASS, Less, Stylus, etc.)
  2. Apply browser extensions and workarounds to CSS
  3. Minify and merge CSS into single optimized file
  4. Produce JS files (from ES6, from CoffeeScript, from TypeScript, etc.)
  5. Minify and merge JS into single optimized file
  6. Produce media files (raster images, fonts, SVG, video, audio)
  7. Optimize media files (minify, recompress, merge)
  8. Produce HTML files (from Jade, from HAML, from Jinja2, etc.)
  9. Link with resources (CSS, JS, images, etc.)
  10. Minify and merge HTML into single optimized file
  11. Validate HTML

Markup minification

turns into

Markup minification

You should make the resulting production HTML code as small as possible

Google PageSpeed Insights is a complete optimization solution

Markup validation

You should validate your markup against the standard

Next steps

View on Github