Introduction to Web, HTML, and CSS
How does a website work? Layout, styling, media, forms, tables, lists, positioning content and everything in between. Lays the foundation for your journey of web development ahead.
Fundamentals of Web Architecture
Basic Fundamentals of HTML
- What is HTML and the role of it in web development?
- Elements, Tags and Attributes
- Setting up Standard HTML Document
- Self Closing Elements, Nesting, and Indentation
Introduction to CSS
- What is CSS and role of CSS?
- Selectors, properties, and values
- Types of Selectors - type, class and ID selectors
- Class Selectors
- ID Selector
- Referencing CSS
Getting to know more HTML & CSS
How does a website work? Layout, styling, media, forms, tables, lists, positioning content and everything in between. Lays the foundation for your journey of web development ahead.
Getting to know more about HTML
- Understand what are HTML semantic tags and why it is impportant?
- Understand Divs and Spans and Block Vs Inline level elements
- Text-based elements - Heading level elements(h1, h2, h3, h4, h5, h6), Paragraph element(p), strong Vs b, em Vs i tags
- Creating Hyperlinks - Anchor Tag(a), Relative and Absolute Path, Linking Email Address
- Creating a link that links to the other part of a web page
- How to add an image on a web page? - img element in HTML
- Structure-Based Elements - Semantic tags that define the outline of the document(header, nav, main, section, article, aside, footer)
- HTML5 Elements - A Demo on Structure Based Elements and Forms of Media and Content
Getting to know more about CSS
- Know more about CSS - CSS Resets, Cascading Rule, Specificity weight of selectors.
- Combining Selectors - Learn how selectors work together
- Styling Elements With Multiple Classes
- Common CSS property values - Color(keyword values, hexadecimal values, RGB & RGBa values, HSL & HSLa values), Lengths(Absolute and Relative lengths)
- Blog with 2 articles - Create a blog page having 2 articles.
The Box Model
Learn about the Box Model, and understand how exactly elements are displayed on a webpage.
The Box Model
- Display properties - block-level, inline-level, and inline-block-level elements
- Understand the Box Model properties - width, height, padding, and margin
- Inline-block level elements
- Calculating the width and height of an element - Actual space covered by an element on a webpage
- The box-sizing property - content-box and border-box
- How to add an image on a web page? - img element in HTML
- The outline and box-shadow property
- Understand the developer tools
- Create a layout containing different boxes.
- The box-model, box-sizing, and box-shadow layout. Please follow the instructions provided in this link
Positioning Content
To create a layout and represent our content in a more beautiful way CSS provides usability to position our content in any imaginable way.
Understand how multi column layouts can be created using "inline-block" positioning and "float" positioning.
Also understand how an element can positioned precisely anywhere in the document using "position" property.
Positioning Content
- Inline-block positioning
- Positioning with float property - float: left | right | none
- Clearing and Containg floats - the clear property, overflow technique, and clearfix technique
- Effectively working with floats - a practical demo on float
- Creating reusable and flexible layouts - working with percentage, creating flexible container, width vs max-width
- Reusable and Flexible Layouts in Practice
Uniquely positioning content
- The Position property
- Position Static
- Position Relative
- Box Offset property
- Position Absolute
- Position Fixed
- Create a gallery page according the instructions provided in this link
- Positioning Layout - Create a website using the theme provided in this lik
Flexbox
Other thatn floats, there is currently a new specification called flex that is being used to best layout our pages. Flex or Flexbox gives us complete control over the alignment, direction, order, and size of our boxes.
Flexbox
Understanding Flex Container properties
- The display: flex property
- The flex-direction property and understand the terminogy "main-axis" and "cross-axis"
- The flex-flow and flex-wrap property
- The justify-content property - flex-start, flex-end, center, space-between, space-around, space-evenly
- The align-items property - stretch, flex-start, flex-end, center, baseline
- The align-content property - stretch, flex-start, flex-end, center, space-between, space-around, space-evenly
Understanding the Flex Item properties
- Understanding flex item property
- The order property
- The flex property - flex-grow, flex-shrink, and flex-basis
- The align-self property - auto, stretch, flex-start, flex-end, center, baseline
- Create a gallery page using flexbox - please open the link for design
- Create a blog dashboard page according to the layout provided in this link
Web Typography
95% of information on the web are in textual form. Knowing representing texts in the best way on a page is also a great challenge. Look at the basic principles of typography and how to apply it using HTML & CSS.
Web Typography
Font Based Properties
Text Based Properties
Quotation and citation in HTML
Background and Gradients
Background plays a significant role when designing a website. They help us to differentiate between sections, group contents, build a hierarchy, etc on a page.
Background Color and Background Image
CSS Gradients
- Linear gradient background
- Controlling the Direction of Gradient
- Radial Gradient Background
- Gradient Color Stop
- Multiple Background Images
- Practice different ways of applying background
- Social Media Dashboard - Checkout the link for the design
Creating Lists
Lists are the fundamental part of HTML. They are useful for displaying things like to-do lists, navigational menu items, a list of ingredients and instructions for recipes, etc.
When it comes to specifying a list of information on a website, HTML offers three different ways: unordered, ordered, and description lists.
Unordered List, Ordered List, Description List
- Unordered list(<ul>)
- Ordered list(<ol>) - start, reversed, and value attribute
- Nesting lists
- List item styling - list-style-type, list-style-image, list-style-position property
- Shorthand list-style property
- Creating navigational list - A demo with example
- Description list - <dl>, <dt>, and <dd>
Adding Media - Different forms Media
When we surf the internet, the core content on a website we usually find in the form of text. In addition to text, HTML provides ways to add different types of media in the form of images, audio, video. The content from other websites also can be embedded in the form of inline frames.
Adding Media - Image, Audio, Video, Inline-frames
- Adding Images - the img element
- Sizing images
- Image formats - gif, jpeg, jpg, png, svg
- The SVG format
- Adding audio - the audio element
- Audio attributes - src, autoplay, controls, loop, and preload
- Audio fallbacks
- Adding video - the video element
- Video attributes - src, autoplay, controls, loop, preload, and poster
- Video fallbacks
- Inline frames - The iframe tag
- Embeding a video using iframe tag
- Embeding a Google map using iframe tag
- Figure and figcaption
- Create a hydro website according the design provided in this link
Checkpoint - Buson Coding Challenge
- Buson - create a multipage website consisting several pages. Please checkout the link to for designs and instructionsPRO
Building HTML Forms
Forms are an essential part of websites, as they provide a way to collect the user's information. For example, during user registration, you would like to collect information like name, email address, password, billing information, etc.
A form collects different information and then processes it with the backend application based on the logic
Building HTML forms
- The form element
- Action and Method attribute inside the form element
- Text and Textarea fields
- The input element
- Type and name attribute inside the input element
- Values for the type attribute inside input element - text, email, password, search, date, time, number, etc.
- Textarea field
- Radio button nad checkbox control
- Dropdown list - select and option element
- Select multiple options from a drop-down list
- Other input types - hidden, file, submit
- The button element
- Organizing form elements - legent, label and fieldset element
- Additinal attributes within form - disabled, placeholder, and required attributes
- Demo - styling a form
- Build a Signup Form - Checkout the form design provided in this link
- The Journey App - Checkout the design provided in this linkPRO
Organising Data With Tables
Many times there are some data that must be displayed in a form that is easy for users to read and digest. For example food ingredients, shopping items with price marks obtained in different subjects, etc. For such kinds of data, the HTML table provides a straightforward way to structure the data in tabular form.
Organising Data With Tables
- Creating a Table - the table element
- Table row - tr element
- Table data - td element
- Table header - th element
- The scope attribute for table header
- The scope attribute values - col, row, colgroup, and rowgroup
- Organizing Data and Table Structure
- Table Caption - caption tag
- Table Head, Body, & Foot - thead, tbody, and tfoot
- Combining Multiple Cells - colspan and rowspan
- Table Borders
- Border collapse property - collapse, separate, inherit
- Border spacing property
- Adding Borders to Rows
- Table Striping
- Aligning Text inside table
- Create a gym landing page according to the design provided in this linkPRO
Responsive Web Design
These days it is hard to find someone who doesn't own a mobile connected to the internet. Everyone doesn't own a laptop or desktop but it's possible everyone owns a mobile device.
With the growth of mobile devices the internet users also growing like crazy. And therefore a new challenge came with how to build websites suitable for all screen users. The users who are using a large monitor screen for them also as well as for the mobile users also.
In response to this "Responsive Web Design" came which helps in building a website which will be suitable for all screen size, no matter how large or small, mobile or desktop.
Responsive Web Design
- What is Responsive Web Design?
- Responsive vs. Adaptive vs. Mobile
- Flexible Layouts
- Media Queries
- Initializing Media Queries
- Different factors of media rule - media type, logical operators, and media features
- Media Type - all, screen, print, tv, and braille
- Logical Operators in Media Queries - and, not, only
- Media Features in Media Queries - min-width, max-width, orientation
- Height & Width Media Features
- Orientation Media Features - landscape and portrait
- Aspect Ratio Media Features - aspect-ratio and device-aspect-ratio
- Resolution Media Features
- Other Media Features - color, color-index, and monochromatic
- CSS Breakpoints to Create Responsive Layout
- Mobile First Approach vs Desktop First Approach
- Viewport
- Viewport Height & Width
- Viewport Scale
- Viewport Resolution
- Flexible Media
- Flexible Embedded Media
- Responsive Blog Template - Please refer to the link for the instructions
- Events 2020 - Please refer to the link for the instructionsPRO
Checkpoint - Flexor Coding Challenge
- Flexor - create a responsive website consisting two pages. Please checkout the link to for designs and instructionsPRO