Web Technologies Overview and HTML Basics
Web Technologies Overview and HTML Basics
UNIT - I:
Introduction to Web Technologies and Web 2.0: Introduction to client server systems,
HTTP protocols, Common tags in HTML: List, Tables, Forms, Frames, Images, Links
and Addressing, Cascading Style Sheet (CSS), XML: Comparative study of XML and
HTML, Document Type Definition, Schema, Parsers (Dom and SAX), Introduction to
JavaScript, JavaScript objects, programming using java script if-else, switch, popup box,
while loop, for loop, event handling, Introduction to Web 2.0, Data and Web 2.0,
Convergence, Web Services: SOAP, JSON, Building Rich Internet Applications with
AJAX, Servlets.
HTTP (Hyper Text Transfer Protocol)
Definition:
• HTTP is a communication protocol used for data transfer between a client
(browser) and a server (web application) over the Internet.
• It defines how requests are sent and how responses are received — like a
digital conversation between your web browser and a server.
500 Internal Server Error Server problem GeoServer crash or backend issue
HTML Common tags:-
HTML is the building block for web pages. HTML is a format that tells a
computer how to display a web page. The documents themselves are plain
text files with special "tags" or codes that a web browser uses to interpret and
display information on your computer screen.
• HTML stands for Hyper Text Markup Language
• An HTML file is a text file containing small markup tags
• The markup tags tell the Web browser how to display the page
• An HTML file must have an htm or html file extension.
HTML Tags
• HTML Tags:- HTML tags are used to mark-up HTML elements .HTML
tags are surrounded by the two characters < and >. The surrounding
characters are called angle brackets. HTML tags normally come in
pairs like and The first tag in a pair is the start tag, the second tag is
the end tag . The text between the start and end tags is the element
content . HTML tags are not case sensitive <B> means the same
as<b>
•<html>: The root element of an HTML page.
•<head>: Contains meta-information about the document (e.g.,
<title>, <meta>).
•<body>: Contains the visible page content (e.g., headings,
paragraphs, images).
Text Formatting Tags:
•Headings: <h1> to <h6> for defining headings (e.g., <h1> is the
largest).
•Paragraphs: <p> for paragraphs.
•Bold & Italics: <strong> (bold) and <em> (italics).
HTML Tag Syntax Description
<div> <div>...</div> Defines a division or section in an HTML document.
<p> <p>...</p> Defines a paragraph.
<a> <a href="...">...</a> Defines a hyperlink.
<img> <img src="..." alt="..."> Embeds an image.
<ul> <ul><li>...</li></ul> Defines an unordered list.
<ol> <ol><li>...</li></ol> Defines an ordered list.
<li> <li>...</li> Defines a list item.
<table> <table>...</table> Defines a table.
<tr> <tr>...</tr> Defines a table row.
<th> <th>...</th> Defines a table header cell.
<td> <td>...</td> Defines a table data cell.
<form> <form>...</form> Defines an HTML form for user input.
<input> <input type="..."> Defines an input control within a form.
<button> <button>...</button> Defines a clickable button.
<h1>-<h6> <h1>...</h1> Define headings of different levels.
<span> <span>...</span> Defines a generic inline container.
<label> <label for="...">...</label> Defines a label for an input element.
<iframe> <iframe src="..."></iframe> Embeds an inline frame for external content.
• Lists:-HTML offers web authors three ways for specifying lists of
information. All lists must contain one or more list elements. Lists are
of three types
• 1) Un ordered list
• 2)Ordered List
• 3)Definition list
1. Lists
method HTTP method used to send data. Usually GET or POST. <form method="post">
name Name of the form (used in JavaScript or server-side access). <form name="loginForm">
Type of encoding used when sending form data. Needed for file <form enctype="multipart/form-
enctype
uploads. data">
autocomplete Enables or disables browser autocomplete for form fields. (on / off) <form autocomplete="off">
novalidate (HTML5) Disables default browser validation on form submission. <form novalidate>
accept-charset Character encoding for the form submission (like UTF-8). <form accept-charset="UTF-8">
<form onsubmit="return
onsubmit JavaScript event triggered before form submission.
validateForm()">
<form onreset="alert('Form
onreset JavaScript event triggered when the form is reset.
cleared!')">
• action → Where to send data (destination file or script).
• method → How to send it (GET = visible in URL, POST = hidden).
• enctype → Important for file uploads.
• autocomplete → Controls if browser fills values automatically.
• novalidate → Skip built-in browser validation (useful when you handle
it with JavaScript).
• target → Where result opens (same tab, new tab, frame).
Attribute Purpose
Turns off HTML5 validation (useful
novalidate for testing).
on / off for full form or specific
autocomplete inputs.
Used in <button> or <input
formnovalidate (for buttons) type="submit"> to skip validation
on that button only.
formenctype, formmethod, Allow overriding parent <form>
formaction, formtarget attributes for specific submit
buttons.
• <form action="[Link]" method="post" enctype="multipart/form-
data" autocomplete="on" target="_blank">
• <label>Name:</label>
• <input type="text" name="username" required><br>
• <label>Upload File:</label>
• <input type="file" name="photo"><br>
• </html>
Links and Addressing in HTML
1. What is a Link?
A link (hyperlink) connects one web page to another page, a
document, an email address, or even a specific section on the
same page.
The main tag used is the <a> (anchor) tag.
Basic Syntax
• Types of CSS:
• 1. Inline CSS – Applied directly inside HTML tags.
• 2. Internal CSS – Defined within <style> tag in the head.
• 3. External CSS – Written in a separate .css file and linked using <link>.
When to Use Inline CSS?
Example of CSS
•Applying Unique Styles: Ideal for styling
individual elements without affecting global styles
<style> •Testing or Debugging: Useful for quick style
adjustments during development.
body { background-color: lightblue; }
•Email Templates: Ensures consistent styling
h1 { color: navy; text-align: center; } across various email clients.
</style> •Dynamic Styling with JavaScript: Allows for
programmatically changing styles based on user
interactions.
Inline CSS applies styles directly to HTML elements using the style attribute, allowing for
quick, unique styling without external stylesheets.
•Quick Application: Ideal for rapid, one-off style adjustments.
•Limited Reusability: Not suitable for applying the same styles to multiple elements.
Introduction to XML
• • XML stands for eXtensible Markup Language.
• • Designed to store and transport data.
• • Focuses on data structure and meaning, not presentation.
• • User-defined tags make XML flexible and readable by both humans
and machines.
Comparative Study: XML vs HTML
HTML:
Focuses on displaying data.
Has predefined tags.
Not case-sensitive.
• XML:
Focuses on storing and transporting data.
User-defined tags.
Case-sensitive and strict structure.
Document Type Definition (DTD)
• A Document Type Definition (DTD) is a set of rules that defines the structure
and legal elements and attributes for an XML or SGML-family markup
language.
• It acts as a blueprint for a document, specifying how tags should be used and
the relationships between them, and can be used by an application to validate
if a document is well-formed and correct.
• Example:
• <!DOCTYPE note [
• <!ELEMENT note (to,from,heading,body)>
• <!ELEMENT to (#PCDATA)>
• ]>
XML Schema
• • XML Schema (XSD) defines the structure, content, and data types of
XML documents.
• • More powerful and flexible than DTD.
• Example:
• <xs:element name='price' type='xs:decimal'/>
XML Parsers: DOM and SAX
• • Parsers process XML documents and extract data.
• // Variables
• let name = 'Sridhar'; const pi = 3.14;
• // Conditional Statement
• if (pi > 3) { [Link]('Pi is greater than 3'); }
JavaScript Objects
• • Objects store data as key-value pairs.
• • Example:
• let student = {
• name: 'Ravi', age: 24, course: '[Link]',
• displayInfo: function() { return [Link] + ' studies ' + [Link]; }
• };
Creating JavaScript Objects
• 1. Object Literal → let person = {name: 'Sita', age: 22};
• 2. new Object() → let person = new Object();
• 3. Constructor Function → function Car(model, year) { [Link] =
model; [Link] = year; }
Accessing and Modifying Objects
• • Access: [Link] or person['age']
• • Add: [Link] = 'Hyderabad';
• • Delete: delete [Link];
Common Built-in JavaScript Objects
• • Math → [Link](), [Link]()
• • Date → new Date()
• • String → 'hello'.toUpperCase()
• • Array → [1, 2, 3].push(4)
JavaScript Conditional Statements (if-else, switch)
• if-else Example:
let age = 20;
if (age >= 18) {
The if...else statement in
[Link]('Adult'); JavaScript is a decision-making
}
else {
statement used to execute
[Link]('Minor'); different blocks of code based
}
on whether a condition is true
let age = 20;
or false.
if (age >= 18) { a block of code means the group of statements written inside
curly braces { ... }.
[Link]("You are eligible to vote.");
Each block tells the computer what to do when a condition is
} else { true or false.
[Link]("You are not eligible to vote.");
}
• let marks = 75;
• if (marks >= 90) {
• [Link]("Grade: A");
• } else if (marks >= 75) {
• [Link]("Grade: B");
• } else if (marks >= 60) {
• [Link]("Grade: C");
• } else {
• [Link]("Grade: F");
•}
let marks = 95;
switch (grade) {
case "A":
[Link]("Excellent");
break;
case "B":
[Link]("Very Good");
break;
case "C":
[Link]("Good");
break;
default:
[Link]("Invalid grade");
}
JavaScript Popup Boxes
A popup box in JavaScript is a small dialog
window that appears on the screen to
interact with the user — either to display a
message, get input, or ask for confirmation.
• • alert('Welcome!') → Displays a simple alert box.
• • confirm('Are you sure?') → Returns true or false.
• • prompt('Enter your name:') → Accepts user input.
There are 3 types of JavaScript Popup Boxes
Type Function Example Use
confirm() Asks user to confirm (OK/Cancel) “Are you sure you want to exit?”
• Definition of while loop
• A while loop in JavaScript is used to repeatedly execute a block of
code as long as a given condition is true.
let i = 1;
while (i <= 5) {
[Link]("Value of i is: " + i);
i++; // increasing i by 1
} let i = 3;
• Example:
• <button onclick="alert('Button clicked!')">Click Me</button>
• [Link]('btn').addEventListener('click', function() {
• alert('Hello!');
• });
Introduction to Web 2.0
Web 2.0 refers to the second generation of the World Wide Web, focusing on user
interaction, collaboration, and content sharing. Unlike Web 1.0, where users were mostly
passive viewers of information, Web 2.0 enables them to create, modify, and share content
easily. It emphasizes social networking, wikis, blogs, and web-based communities, allowing
a more participatory web experience.
Key characteristics of Web 2.0 include:
• User-generated content (e.g., YouTube, Wikipedia)
• Rich user experience using technologies like AJAX and JavaScript
• Social media interaction
• Cloud-based applications
• TaggingThe term
and “Web 2.0” was
folksonomies first
for introduced
better in 1999
content by Darcy DiNucci, a web
organization
designer.
But it became popular globally in 2004, after the O’Reilly Media Web 2.0
Conference organized by Tim O’Reilly.
.
Web 1.0 (1990s–early 2000s): “Read-Only Web” 🟢 Web 2.0 (2004 onwards): “Read + Write + Interact Web”
Web 1.0 was the early stage of the internet, Web 2.0 changed the internet completely.
where: It gave more facilities for public and humans to learn, share,
•Websites were static and communicate.
Features:
•Users could only read information
•Users can read + write + interact
•No interaction (no comments, no sharing, no •All modern web apps started
login) •Blogs, comments, likes, shares
•Very few features •Social media (Facebook, YouTube, Instagram)
•Mainly used by limited people •E-learning, online payments, live chats
•Information moved one way—from website to •Cloud services and mobile apps
user •Internet became powerful tool for learning anything
Example: Example:
YouTube, Facebook, Wikipedia, Instagram, WhatsApp Web,
Old websites like early Yahoo pages, newspaper
Google Docs, Online Courses.
sites, basic HTML pages.
📌 In short:
Web 1.0 = Less facilities, only read-only websites.
Web 2.0 = More facilities, interactive, user-generated content, learning
for everyone.
In Web 2.0, data is the key element that drives user interaction and content sharing. Unlike Web 1.0,
where websites only displayed fixed information, Web 2.0 applications collect, process, and share data
dynamically among users.
• Key Points:
• User-Generated Data: Users create and share content such as videos, blogs, comments, and reviews.
• Dynamic Data Exchange: Data changes in real-time through web technologies like AJAX and APIs.
• Data Sharing & Collaboration: Users can collaborate online (e.g., Google Docs, Wikipedia).
• Data as a Service (DaaS): Web 2.0 applications use and provide data through web services and APIs.
• Big Data Emergence: The growth of Web 2.0 led to large amounts of data from social media and
user interactions.
• Examples:
• Facebook and Instagram → user posts and media data
• Google Docs → shared and editable online data
• YouTube → user-uploaded video data
Convergence in Web 2.0
Convergence means coming together of different technologies, media, and
communication platforms into one system.
In Web 2.0, convergence allows people to access and share data, videos, music, and
messages all in one place using the internet.
It connects computers, mobile phones, TV, and social media — so users can do many
things through a single device or app.
Key Points:
Integration of media (text, audio, video) on one platform.
Merging of communication and internet technologies.
Enables social networking, online streaming, and cloud services.
Makes information sharing faster and easier.
Examples:
Watching YouTube or Netflix on mobile phones or smart TVs.
Sharing videos, images, and messages on Facebook or Instagram.
Using smartphones for internet, gaming, and video calls together.
Web Services and Protocols
Web Services: SOAP
SOAP (Simple Object Access Protocol) is a protocol used to exchange
information between two computers or applications over the internet.
It is one of the main technologies used in Web Services for communication.
Key Points:
SOAP is based on XML (Extensible Markup Language).
It helps different applications (written in different languages or running on
different systems) communicate with each other.
Uses HTTP or SMTP to send and receive messages.
Provides a standardized format for data exchange.
Ensures security and reliability in communication.
Structure of a SOAP Message:
[Link] – Defines the start and end of the message.
[Link] – Contains optional information (like authentication).
[Link] – Contains the main data or request.
[Link] – Shows error messages if something goes wrong.
Example:
When a mobile app requests weather data from a web server, it
can use SOAP to send a request and receive an XML-based
response.
SOAP is a standard protocol that uses XML to allow different
systems to communicate securely and reliably over the web.
JSON (JavaScript Object Notation)
JSON stands for JavaScript Object Notation.
It is a lightweight data format used to store and exchange data between a
web server and a web application.
It is easy for both humans to read and computers to understand.
Key Points:
JSON is text-based and uses key–value pairs (like a dictionary).
It is commonly used in Web 2.0 and APIs for data exchange.
Works with many programming languages — not just
JavaScript.
Faster and simpler than XML.
Data is stored in { } (curly braces) and arrays in [ ].
Advantages:
•Simple and easy to use
•Fast data transfer
•Compact (takes less space)
•Language independent
Key Idea:
AJAX allows a web page to send and receive data from the
server in the background, without reloading the entire
page.
This makes web applications faster and smoother for users.
How AJAX Works:
[Link] user performs an action (like clicking a button).
[Link] sends a request to the web server (using XMLHttpRequest).
[Link] server processes the request and sends data (in JSON or XML format).
[Link] updates part of the webpage without reloading the whole page.
Example:
When typing in Google Search, results appear instantly — that’s AJAX.
Submitting a form without page reload.
Advantages:
Faster data exchange
Improved user experience
Reduces server load
Smooth and dynamic pages
AJAX helps build Rich Internet Applications by allowing real-time data updates
on web pages without refreshing the page.
Servlets
A Servlet is a Java program that runs on a web server and
is used to create dynamic web pages.
It acts as a middle layer between the client (browser) and
the server (database or application logic).
Key Points:
•Servlets are part of Java EE (Enterprise Edition).
•They handle requests and responses between the client and server.
•Run inside a Servlet Container (like Apache Tomcat).
•Used for processing form data, interacting with databases, and
generating dynamic content (like HTML pages).
Servlet Life Cycle:
[Link]() – Called once when the servlet is created.
[Link]() – Handles each client request (GET/POST).
[Link]() – Called when the servlet is removed from memory.
Advantages:
•Platform independent (Java-based)
•Efficient and secure
•Reusable and maintainable
•Better performance than traditional CGI programs
Example:
When a user submits a login form, the request is sent to a Servlet, which checks the
credentials in a database and sends back a response page.
A Servlet is a server-side Java program used to process client requests and generate
dynamic web content.
UNIT - II: HTML5&CSS3: HTML5 Document Structure Changes, Forms, Form
elements, Video and Audio, Semantic elements, Structural elements,
Introduction to CSS3, Style inclusion methods, selectors, properties, fonts,
colors.
HTML5 Document Structure Changes
The new elements (like <datalist>) add entirely new behaviors to forms, while
the new types mainly help with data validation and mobile keyboard layouts
(e.g., showing a numeric keypad for type="number").
Structural Elements are HTML tags that only define the layout or structure of a page but do NOT
convey any meaning about what the content actually is.
• They are generic containers ("empty boxes").
• Their purpose is purely visual or positional.
• Before HTML5, we had to use them for everything because no better tags existed.
Key Attributes:
<video controls>
• src (Source): Specifies the path to the video file (when used
directly on the <video> tag).
What is CSS3?
• CSS3 stands for Cascading Style Sheets Level 3 —
it’s the latest major version of CSS used to style and design web
pages.
• It builds upon CSS2, adding new features, modules, and visual effects
that make modern web design more powerful, flexible, and beautiful.
Main Features of CSS3
Feature Description Example
Selectors New selectors for precise styling :nth-child(), :not()
Box Model &
Layouts New layout techniques flexbox, grid, multi-column
Backgrounds
& Borders Multiple backgrounds, rounded corners border-radius, background-image
Colors &
Opacity RGBA, HSLA colors color: rgba(255, 0, 0, 0.5);
Transitions &
Animations Smooth motion effects @keyframes, transition
Media
Queries Responsive design for devices @media (max-width: 600px)
@font-face { font-family:
Web Fonts Custom fonts using @font-face 'Poppins'; }
Transformati
ons Rotate, scale, skew elements transform: rotate(45deg);
• A CSS Selector is a pattern or rule that determines which HTML elements a set
of CSS declarations will apply to.
In other words, selectors define the “target elements” on which styling must
be applied.
• Selectors form the core of the CSS selection API, enabling structured,
hierarchical, and attribute-based querying of DOM elements — similar to how
queries work in XML and XPath.
• Why Selectors Are Important?
• They provide a powerful querying mechanism to navigate the DOM tree.
• They allow styling based on structure, attributes, states, or relationships
between elements.
• They enable modular, scalable, and maintainable styling (important in large
applications).
• They reduce JavaScript dependency by allowing UI state handling
(e.g., :hover, :checked, :focus).
Selectors are the backbone of CSS. They act as queries that tell the
browser which element to style. CSS3 extended the selector mechanism
to allow more complex patterns such as attribute-based selectors,
structural selectors, and UI-state selectors.
This improves the design process, reduces code complexity, and
enhances component-based design in modern web applications.
Important point:
Selectors are used in CSS to choose or target HTML elements. They help
us apply styles to specific tags, classes, and IDs. They also reduce
complex code by avoiding repeated styling and make the CSS cleaner
and more maintainable.
Basic Selectors
These match elements directly.
Type Selector → selects elements by tag
p{}
Class Selector → reusable categorization
.btn { }
ID Selector → unique identification
#header { }
Universal Selector → selects everything
*{}
Description:
Basic selectors provide direct access to elements based on their name
or labels and help enforce consistent styling patterns.
Advantages of CSS3
The CSS border property is used to create an outline around HTML elements, and it has three main
components — border-width, border-style, and border-color — which can be combined into a single
shorthand declaration.
The border-width defines the thickness (like thin, medium, thick, or in pixels), the border-style specifies
the line pattern (such as solid, dotted, dashed, double, groove, ridge, inset, or outset), and the border-
color sets the color of the border using color names, HEX, RGB, or HSL values.
CSS also allows setting borders for individual sides (border-top, border-right, border-bottom, border-
left), and advanced features like border-radius (for rounded corners) and border-image (for using an
image as the border) were introduced in CSS3. Together, these properties help style boxes, divs, images,
and other elements for better visual appeal and layout design.
CSS Background Property
• 💡 Definition:
• The background property in CSS is used to set the background effects of an element.
It can define colors, images, gradients, positioning, repeating, and even combine all of these in one shorthand
property.
• The CSS background property controls the appearance of the area behind an element’s content and padding,
using several sub-properties.
• The background-color property sets the background color, while background-image allows you to use an
image as the background.
• You can control how the image behaves using background-repeat (to repeat horizontally, vertically, or not at
all),
• background-position (to align the image like top, center, or bottom), and
• background-attachment (to make the background fixed or scroll with the page).
• CSS3 added background-size to resize the image (like cover or contain),
• background-clip to define how far the background extends (to the border-box, padding-box, or content-box),
• background-origin to set the starting position area, and
• background-blend-mode to mix multiple backgrounds visually. All of these can be combined in a single
shorthand property like
background: #00b4db url('[Link]') no-repeat center/cover fixed;,
making it easier to apply color, image, repeat, position, size, and attachment in one line.
• A CSS gradient is a smooth color transition between two or more
colors that can be applied to the background of an element.
They are generated by the browser, so no image files are needed —
making pages faster and more flexible.
• The CSS3 text effects provide visual styling to text elements, including
properties like text-shadow for shadows, text-decoration for lines and
styles, text-transform for letter case, text-overflow and white-space for
handling overflow, and letter-spacing or word-spacing for text spacing.
CSS3 also adds advanced effects like gradient-filled text using background-
clip, and outlined text using -webkit-text-stroke. Together, these
properties enhance readability, appearance, and creativity in web
typography.
Definition:
The @font-face rule in CSS3 allows developers to load custom fonts on a
webpage instead of using only the standard system fonts (like Arial or Times
New Roman). It lets you define a font by giving it a name and linking it to a font
file (like .ttf, .woff, or .otf) stored locally or on a server.
• So even if a visitor doesn’t have that font installed on their computer, the
browser will download and display it correctly.
• The @font-face rule in CSS3 allows developers to define and use custom fonts
by linking external font files directly within a stylesheet. It specifies a font-
family name and a src path to one or more font formats such as WOFF,
WOFF2, TTF, or OTF to ensure cross-browser compatibility.
• Once defined, the font can be used like any standard font in CSS. This feature
enhances design flexibility, enabling consistent typography across all devices
and browsers, even if the user doesn’t have the font installed locally.
What are Google Fonts?
• Google Fonts is a free, open-source font library provided by Google.
It allows web developers, designers, and app developers to use
hundreds of fonts easily in websites and applications.
• ✔ 100% Free
✔ No license issues
✔ Works on any device
✔ Very easy to include using CSS
Why use Google Fonts?
• Huge collection of professional fonts
• Improves website readability and look
• Loads fast from Google CDN
• Supports multiple languages (Hindi, Telugu, Tamil, etc.)
• Highly customizable (sizes, weights, styles)
• How to Add Google Fonts to Your Website
• There are two methods:
• Method 1: Using <link> tag (Recommended)
• Method 2: Using @import in CSS
• Add this inside your .css file:
• <link rel="preconnect" href="[Link]
• <link rel="preconnect" href="[Link] crossorigin>
• <link href="[Link]
family=Poppins:wght@300;400;600&display=swap" rel="stylesheet">
• body {
• font-family: 'Poppins', sans-serif;
•}
• @import url('[Link]
family=Roboto:wght@300;400;700&display=swap');
• body {
• font-family: 'Roboto', sans-serif;
•}
Multiple fonts in CSS
• h1 { font-family: 'Poppins', sans-serif; }
• p { font-family: 'Roboto', sans-serif; }
Advantages & Disadvantages
• ✔ Advantages:
• Free and open-source
• Massive font library
• Fast loading via CDN
• Easy to use
• Supports many languages
• ✖ Disadvantages:
• Requires internet connection to load fonts
• Many variations increase page load time
• Not all fonts suitable for professional documents
• Best Google Fonts for Websites • ✔ Display / Decorative
• ✔ Sans-serif • Lobster
• Roboto • Pacifico
• Poppins • Fredoka One
• Open Sans • ✔ Monospace (Coding)
• Inter • Source Code Pro
• Lato • Roboto Mono
• ✔ Serif
• Merriweather
• Playfair Display
• Crimson Text
• <!DOCTYPE html> • h1 {
• <html> • font-weight: 600;
• <head> • }
• <link rel="preconnect" • p{
href="[Link] • font-weight: 400;
• <link rel="preconnect" • }
href="[Link] crossorigin>
• </style>
• <link
href="[Link] • </head>
family=Poppins:wght@400;600&display=swa
p" rel="stylesheet"> • <body>
• • <h1>Welcome to Google Fonts</h1>
• <style> • <p>This text is styled using the Poppins
• body { font from Google Fonts.</p>
• font-family: 'Poppins', sans-serif; • </body>
• } • </html>
2D Transform
• 2D Transform means changing the shape, size, and position of an
element on a two-dimensional plane (x-axis and y-axis).
• Transforms allow you to:
• ✔ Move (translate)
✔ Resize (scale)
✔ Rotate
✔ Skew (tilt)
✔ Apply matrix transformations
• In CSS and Graphics, transforms are applied using:
transform: ...;
3D Transforms
• 3D Transform allows you to move, rotate, scale, or change an element
in three-dimensional space:
• X-axis → Horizontal
• Y-axis → Vertical
• Z-axis → Depth (towards/away from the screen)
• 3D Transform modifies an element in three-dimensional space by
applying translation, scaling, and rotation along the X, Y, and Z axes
with depth perception.
• The resize property in CSS allows the user to manually resize an
element (mostly <div> or <text area>) using the mouse.
• ✔ Supported directions:
• Horizontal
• Vertical
• Both
• BOX RESIZING (CSS Resize Property)
• The resize property in CSS allows the user to manually resize an
element (mostly <div> or <textarea>) using the mouse.
• ✔ Supported directions:
• Horizontal
• Vertical
• Both
Box Resize allows the user to manually change the size of an element (mostly <div> or <textarea>) by
dragging its corner. This is controlled using the CSS resize property.
• Resize in Both Directions
• Allows changing width and height.
• <style>
• .box {
• width: 200px;
• height: 150px;
• border: 2px solid #000;
• padding: 10px;
• overflow: auto;
• resize: both;
• }
• </style>
animation Shorthand
Types of CSS Selectors
1. Basic Selectors
2. Combinator Selectors
3. Attribute Selectors
4. Pseudo-Class Selectors
5. Pseudo-Element Selectors
Short Summary
Basic: *, tag, .class, #id, group
Combinators: , >, +, ~
Attribute: [attr=value] variations
Pseudo-Class: :hover, :focus, :nth-child()
Pseudo-Element: ::before, ::after, etc.
CSS Multiple Columns (CSS3 Multi-Column Layout)
CSS Multiple Columns allow you to split text/content into multiple
columns, similar to a newspaper or magazine layout.
1. column-count
Specifies how many columns the content should be divided into.
2. column-gap
Sets the space between columns
3. column-rule
Adds a line between columns (like a border).
4. column-width
Sets the ideal width for each column. Browser adjusts number of
columns.
• 5. columns (Shorthand)
• You can combine column-count and column-width.
• 6. column-span
• Controls whether an element should span across all columns.
• 7. column-fill
• Defines how content is filled across columns.
• balance – content distributed evenly (default)
• auto – content fills columns sequentially
Converting Layout to HTML 5 & CSS
3
Why Conversion is Needed
• Improve semantic structure with HTML5 tags
• Better accessibility (screen readers, SEO)
• Cleaner, maintainable code structure
• Separation of structure and styling
Problems with Old Layouts
• Language interoperability
• Automatic memory management
• High performance via JIT compilation
• Strong security mechanisms
• Large class library for rapid development
Architecture Overview
• Application Layer
• Framework Class Library (FCL) Layer
• Common Language Runtime (CLR) Layer
• IL Code compiled to native machine code by JIT
Execution Process
• Originally Windows-only
• Heavy framework size
• Not ideal for small embedded systems
Summary