Python Java C++ HTML CSS Bootstrap JavaScript jQuery AngularJS React Node.js TypeScript Django NumPy Pandas Matplotlib Seaborn Machine Learning Deep Learning Decipher XML

Introduction

Bootstrap is a popular front-end framework for building responsive, mobile-first websites quickly using HTML, CSS, and JavaScript components.

Bootstrap provides pre-styled components like buttons, forms, navbars, grids, modals, and utilities for rapid development.

Why Use Bootstrap?

  • Speeds up UI development with reusable components.
  • Provides a consistent design system and spacing scale.
  • Built-in responsiveness with a 12-column grid.

Core Concepts

  • Grid system: responsive layouts using rows and columns.
  • Utilities: quick helpers for spacing, colors, display, and sizing.
  • Components: ready-made UI like navbars, cards, alerts, modals.

Getting Started

The quickest setup is via CDN. For production, you can also install Bootstrap via npm and customize it with Sass.

<!-- Include Bootstrap CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">

<!-- Include Bootstrap JS -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>

Bootstrap uses a combination of CSS classes and JS components.

Required Meta Tag

<meta name="viewport" content="width=device-width, initial-scale=1">
      

Optional NPM Install

npm install bootstrap
      

Grid System

Bootstrap uses a 12-column responsive grid system with breakpoints like sm, md, lg, and xl.

<div class="container">
  <div class="row">
    <div class="col-md-4">Column 1</div>
    <div class="col-md-4">Column 2</div>
    <div class="col-md-4">Column 3</div>
  </div>
</div>

Responsive Columns

<div class="row">
  <div class="col-12 col-md-6 col-lg-4">A</div>
  <div class="col-12 col-md-6 col-lg-4">B</div>
  <div class="col-12 col-lg-4">C</div>
</div>
      

Gutters and Alignment

<div class="row g-3 align-items-center">
  <div class="col">Item</div>
  <div class="col">Item</div>
</div>
      

Typography

Bootstrap includes responsive typography styles and utility classes.

<h1 class="display-1">Heading</h1>
<p class="lead">This is lead paragraph</p>
<small>Small text</small>

Bootstrap provides utility classes for headings, paragraphs, and text alignment, colors, and emphasis.

Text Utilities

<p class="text-uppercase text-center text-muted">Centered Uppercase</p>
<p class="fw-bold fst-italic">Bold + Italic</p>
      

Buttons

<button class="btn btn-primary">Primary</button>
<button class="btn btn-success">Success</button>
<button class="btn btn-outline-danger">Outline</button>

Bootstrap buttons have pre-defined styles and variants.

Sizes and States

<button class="btn btn-primary btn-sm">Small</button>
<button class="btn btn-primary btn-lg">Large</button>
<button class="btn btn-secondary" disabled>Disabled</button>
      

Button Groups

<div class="btn-group">
  <button class="btn btn-outline-dark">Left</button>
  <button class="btn btn-outline-dark">Middle</button>
  <button class="btn btn-outline-dark">Right</button>
</div>
      

Forms

<form>
  <div class="mb-3">
    <label class="form-label">Email</label>
    <input type="email" class="form-control">
  </div>
</form>

Bootstrap provides input groups, validation classes, and custom form controls.

Input Groups

<div class="input-group mb-3">
  <span class="input-group-text">@</span>
  <input type="text" class="form-control" placeholder="username">
</div>
      

Validation States

<input class="form-control is-valid">
<div class="valid-feedback">Looks good!</div>

<input class="form-control is-invalid">
<div class="invalid-feedback">Please fix this.</div>
      

Cards

<div class="card" style="width: 18rem;">
  <img src="..." class="card-img-top">
  <div class="card-body">
    <h5 class="card-title">Card title</h5>
    <p class="card-text">Some text.</p>
  </div>
</div>

Card Layouts

<div class="card">
  <div class="card-header">Header</div>
  <div class="card-body">Body</div>
  <div class="card-footer">Footer</div>
</div>
      

Modals

<button class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#exampleModal">Launch</button>
<div class="modal fade" id="exampleModal">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header"><h5 class="modal-title">Modal</h5></div>
      <div class="modal-body">Content</div>
    </div>
  </div>
</div>

Modal Footer and Actions

<div class="modal-footer">
  <button class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
  <button class="btn btn-primary">Save</button>
</div>
      

Utility Classes

Bootstrap offers utility classes for spacing, colors, display, flex, text, borders, and more.

<div class="m-3 p-2 bg-light text-center">Box</div>

Common Utilities

<div class="d-flex gap-2 align-items-center">...</div>
<div class="text-primary fw-semibold">Primary Text</div>
<div class="border rounded p-3">Card</div>