CSS Lists | asadmukhtar.info
Step-by-Step Guide to Setting Up Authentication in Laravel 12 with Breeze   |   Manual Authentication in Laravel 12: Step-by-Step Guide   |   How to Build a REST API in Laravel 12 with Sanctum   |   Laravel 12 CRUD Application with Image Upload   |   Laravel 12 Multi-Auth System: Admin & User Login   |   How to Integrate Stripe Payment Gateway in Laravel 12   |   Building a Role-Based Access Control (RBAC) in Laravel 12   |   How to Use Laravel 12 Queues and Jobs for Background Tasks   |   Laravel 12 Livewire CRUD Example with Validation   |   Email Verification and Password Reset in Laravel 12   |   How to Use Laravel 12 API with Vue.js 3   |   Laravel 12 AJAX CRUD with jQuery and Bootstrap   |   Laravel 12 Multi-Language Website Setup   |   React Best Practices for 2025: Performance, SEO, and Scalability   |   How to Build a Full-Stack MERN App: A Step-by-Step Guide   |   React State Management: Redux vs. Context API vs. Recoil   |   Server-Side Rendering (SSR) in React with Next.js for SEO   |   How to Optimize React Apps for Faster Load Times   |   Building a REST API with Node.js and Express for a React App   |   Integrating JWT Authentication in React and Node.js (MERN Stack)   |   Real-time Chat App with React, Node.js, and Socket.io   |   How to Deploy a MERN Stack Application on AWS or Vercel   |   Connecting React Frontend to a Node.js Backend with Axios   |   Laravel Implement Flash Messages Example   |   How to integrate Angular 19 with Node.js and Express for full-stack development   |   Best practices for connecting Angular 19 frontend with Laravel API   |   Step-by-step guide to upgrading an existing project to Angular 19   |   How to implement authentication in Angular 19 using JWT and Firebase   |   Optimizing server-side rendering in Angular 19 with route-level render modes   |   Using Angular 19 signals for state management in large applications   |   How to create standalone components in Angular 19 for modular architecture   |   Building a CRUD application in Angular 19 with MongoDB and Express   |   Implementing lazy loading in Angular 19 to improve performance   |   How to integrate Angular 19 with GraphQL for efficient data fetching   |   Vue 3 Composition API vs Options API: A Comprehensive Comparison   |   Fetching and Displaying Data from APIs in Vue.js with Axios   |   Building a Todo App in Vue.js with Local Storage Integration   |   Handling Forms and Validation in Vue.js Using VeeValidate   |   State Management in Vue.js Applications Using Vuex   |   10 Most Important Tasks Every MERN Stack Developer Should Master   |   How to Build a Full-Stack CRUD App with MERN Stack   |   Best Practices for Authentication & Authorization in MERN Stack   |   1. MEAN Stack vs. MERN Stack: Which One Should You Choose in 2025   |   Top 10 Node.js Best Practices for Scalable and Secure Applications   |   How to Build a REST API with Laravel and Node.js (Step-by-Step Guide)   |   Mastering Angular and Express.js for Full-Stack Web Development   |   Top 10 Daily Tasks Every Frontend Developer Should Practice   |   Essential Backend Development Tasks to Boost Your Coding Skills   |   Real-World Mini Projects for Practicing React.js Daily   |   Laravel Developer Task List: Beginner to Advanced Challenges   |   How to Assign Effective Tasks to Your Intern Developers   |   10 Must-Try Tasks to Master JavaScript Fundamentals   |   Practical CSS Challenges That Improve Your UI Design Skills   |   Top Tasks to Learn API Integration in React and Angular   |   Best Task Ideas for a 30-Day Web Development Challenge   |   Top Git and GitHub Tasks Every Developer Should Know   |   30-Day Task Plan for Web Development Interns   |   Weekly Task Schedule for Junior Developers in a Startup   |   How to Track Progress with Development Tasks for Interns   |   What Tasks Should You Give to Interns in a MERN Stack Project   |   Build These 5 Projects to Master React Routing   |   Task-Based Learning: Become a Full-Stack Developer in 90 Days   |   Daily Coding Tasks That Will Sharpen Your Logical Thinking   |   Top 7 Backend Task Ideas to Practice With Node.js and MongoDB   |  

CSS Lists

CSS provides styling options to customize lists (<ul>, <ol>, and <li>) to enhance their appearance and readability.

 

1️⃣ Types of Lists in HTML

List Type Description Example
Unordered List (<ul>) Displays bullet points before list items. • Item 1 • Item 2
Ordered List (<ol>) Displays numbered items in order. 1. Item 1 2. Item 2
Description List (<dl>) Defines terms and descriptions. Term: Definition

 

2️⃣ Styling List Types with CSS

🔹 Changing List Marker Type (list-style-type)

You can change the bullet or number style in lists.

ul {
  list-style-type: square; /* Options: disc, circle, square, none */
}

ol {
  list-style-type: upper-roman; /* Options: decimal, lower-alpha, upper-roman, etc. */
}

Example Output:

  • Square Bullet List:
    ▪ Item 1
    ▪ Item 2

  • Roman Number List:
    I. Item 1
    II. Item 2

 

3️⃣ Removing Default List Styles (list-style: none;)

To remove default bullets or numbers:

ul, ol {
  list-style: none; /* Removes bullets or numbers */
  padding: 0;
  margin: 0;
}

Useful for custom navigation menus!

 

4️⃣ Custom List Marker with Images (list-style-image)

You can use an image instead of bullets:

ul {
  list-style-image: url("bullet.png");
}

✔ This replaces bullets with bullet.png.

 

5️⃣ Customizing List Spacing (padding & margin)

li {
  padding: 5px 10px;
  margin-bottom: 5px;
}

✔ Adds space between list items for better readability.

 

6️⃣ Styling Nested Lists

You can style sub-lists differently.

ul li {
  color: blue;
}

ul ul {
  margin-left: 20px;
  color: darkgray;
}

Nested lists will have a different color and indentation.

 

7️⃣ Creating a Horizontal Navigation Menu with Lists

Lists are often used for navigation menus.

.navbar ul {
  list-style: none;
  padding: 0;
}

.navbar li {
  display: inline;
  margin-right: 10px;
}

.navbar a {
  text-decoration: none;
  color: white;
  background-color: blue;
  padding: 5px 10px;
  border-radius: 5px;
}
<div class="navbar">
  <ul>
    <li><a href="#">Home</a></li>
    <li><a href="#">About</a></li>
    <li><a href="#">Contact</a></li>
  </ul>
</div>

This creates a horizontal navigation menu.

 

8️⃣ Summary Table

CSS Property Description Example
list-style-type Changes bullet/number style. list-style-type: square;
list-style-image Replaces bullets with an image. list-style-image: url(icon.png);
list-style Shorthand for list styles. list-style: circle inside;
padding Adds space inside items. padding: 10px;
margin Adds space outside items. margin-bottom: 5px;

 

 Conclusion

CSS allows full customization of unordered, ordered, and description lists. You can change bullet styles, remove list markers, add images, control spacing, and create navigation menus.