CSS Tutorial
CSS stands for Cascading Style Sheets. It is a stylesheet language used to style and enhance website presentation. CSS is one of the three main components of a webpage, along with HTML and JavaScript.
- HTML adds Structure to a web page.
- JavaScript adds logic to it and CSS makes it visually appealing or stylish. It controls the layout of a web page i.e. how HTML elements will be displayed on a webpage.
CSS was released (in 1996), 3 years after HTML (in 1993). The main idea behind its use is that it allows the separation of content (HTML) from presentation (CSS). This makes websites easier to maintain and more flexible.










How to Add CSS to HTML?
There are three different ways to add CSS styles to an HTML document:
1. Inline CSS
Use the style attribute on the HTML element to add styles to the web page. It is used for small projects.
<!-- File name: index.html -->
<html>
<body>
<!-- Using Inline CSS -->
<h3 style="text-align: center;">
Welcome To GFG
</h3>
<p>CSS Tutorial - GeeksforGeeks</p>
</body>
</html>
2. Internal CSS
Place the CSS styles within a <style> tag inside the HTML file, usually inside the <head> section.
<!-- File name: index.html -->
<html>
<head>
<!-- Using Internal CSS -->
<style>
h3 {
color: green;
}
</style>
</head>
<body>
<!-- CSS is applied here -->
<h3>Welcome To GFG</h3>
<p>CSS Tutorial - GeeksforGeeks</p>
</body>
</html>
3. External CSS
Create a separate CSS file with a .css extension and link this file to your HTML file using the <link> tag in header section. It consider the best practice to add CSS into HTML File.
<!-- File name: index.html -->
<html>
<head>
<!-- Importing External CSS -->
<link rel="stylesheet" href="style.css" />
</head>
<body>
<p>CSS Tutorial - GeeksforGeeks</p>
</body>
</html>
/* Write CSS Here *//* External CSS */
/* File name: style.css */
p {
text-align: center;
}
CSS Fundamentals
This section covers the fundamental topics of CSS, providing a solid base to get you started:
- Introduction to CSS
- CSS Syntax
- CSS Comments
- CSS Ruleset
- CSS Selectors
- CSS Combinators
- CSS Measurement Units
- Practice: CSS Basics Quiz
CSS Properties
This section covers important CSS properties that control how elements look and work on a webpage. Start with CSS Display to learn how elements are shown and arranged
- CSS Display
- CSS Backgrounds
- CSS Borders
- CSS Font
- CSS Colors
- CSS Margins
- CSS Padding
- CSS Position
- CSS White Space
- CSS Height and Width
- CSS OverFlow
- CSS Shadow
Styling HTML Elements with CSS
This section covers all the key techniques you need to style different parts of an HTML page using CSS:
- CSS Text
- CSS Images
- CSS Lists
- Practice: CSS Colors and Fonts Quiz
- CSS Tables
- CSS Forms
- Practice CSS Forms Quiz
- CSS links
CSS Projects for Beginners
Now you have a basic understanding of CSS. So start with some beginner level projects to clear your concept and to implement in real world applications.
- Design Geeks for Geeks Logo
- Meet the Team Page Design
- Tribute Page Design
- Design a web page
- Contact Us Page Design
- Create Browsers Window
- Design Email Newsletter
CSS Responsive Design
This section focuses on CSS techniques that help you create flexible and adaptable web designs. You’ll learn how to build layouts that work well on different screen sizes and devices, control element spacing, and manage positioning effectively
- CSS Media
- CSS Website Layout
- CSS Box Model
- Practice CSS Box Model and Spacing Quiz
- Responsive Design
- CSS Positioning
- Practice: CSS Layout Logic Quiz
- CSS Nesting style rules
- Practice: CSS Responsive Design and Media Queries Quiz
Logic Implementations in CSS
This Section Covers all the mathematical logic that can be applied in CSS.
- CSS Counters
- CSS Columns
- CSS Conditional Rules
- CSS Logical Properties
- CSS Math functions
- Practice: Logic Implementations in CSS
Interesting Facts in CSS
This section covers all the interesting facts and features that make CSS a powerful and versatile tool for web design.
Advanced CSS Topics
This Section contains various information about advanced topics in CSS
- CSS Specificity
- CSS Variables
- CSS Inheritance
- CSS Transforms
- CSS Transitions
- CSS Animations
- Practice: CSS Advanced Styling Quiz
- CSS Variables
- CSS Function
- CSS Shadow DOM
- Practice: CSS Flexbox and Grid Layout Quiz
CSS Interview Questions
Don't miss our CSS Interview Questions and Answers before going for your interview.
- CSS Interview Questions and Answers (2025) For Beginners
- Advance CSS Interview Questions and Answers (2025) For Experienced
Bonus Resource: CSS Cheat-Sheet for Beginners (2025) - A Basic Guide to CSS.
CSS Frameworks
CSS Frameworks are a collection of pre-written CSS files (and sometimes JavaScript components) that offer reusable code for common tasks such as buttons, grids, forms, and navigation menus.
These CSS frameworks provide a set of standardized, reusable components and a predefined structure, allowing developers to create responsive and aesthetically pleasing websites with reduced effort.
Other Useful CSS Resources
CSS Versions
- CSS 1: The foundation, released in 1996, introduced basic styling capabilities for fonts, colors, and margins.
- CSS 2: Expanded in 1998, adding positioning elements, pseudo-classes, and improved layout options.
- CSS 2.1: Further refinements in 2004, including improvements to inheritance and box model properties.
- CSS 3: Introduced from 2001 onwards, CSS3 isn't a single version but a collection of modules adding features like animations, media queries, and web fonts. It's constantly evolving.
CSS Preprocessors
This section contains information about the preprocessors used in CSS.
Why learn CSS?
CSS is essential for modern web development. Here's why you should learn it:
1. Enhance Visual Appeal
CSS allows you to style your web pages, making them visually appealing and engaging. Here’s why it matters:
- User Experience (UX): Well-designed websites attract and retain users. CSS enables you to create beautiful layouts, choose fonts, and apply colors that resonate with your audience.
2. Responsive Design
In today’s mobile-first world, responsive design is crucial. CSS empowers you to:
- Media Queries: Adapt your layout based on screen size (desktop, tablet, mobile).
- Flexbox and Grid: Create flexible, adaptive designs that look great on any device.
3. Improve Website Performance and SEO
CSS indirectly impacts your site’s SEO. Here’s how:
- Page Load Speed: Well-organized CSS files load faster, improving user experience. Google considers page speed as a ranking factor.
- Structured Content: Properly styled HTML (thanks to CSS) enhances readability for search engines and users.
- Mobile Friendliness: Responsive CSS ensures your site performs well on mobile devices, positively affecting rankings.
4. Efficient Maintenance
CSS promotes clean code and separation of concerns:
- Modularity: Separate CSS files allow easy updates without affecting other parts of your site.
- Consistency: Apply styles consistently across your site using classes and IDs.
5. Career Opportunities
Learning CSS opens doors to various roles:
- Front-End Developer: Mastering CSS is essential for front-end development.
- Web Designer: CSS skills are fundamental for creating stunning web layouts.
- Full-Stack Developer: Understanding CSS complements back-end skills.