1. Home
  2. /
  3. Bootstrap
  4. /
  5. Counter with Step

Counter with Step - Bootstrap Typing CST Test

Loading…

Counter with Step — Bootstrap Code

Counter increments/decrements by a custom step value using Bootstrap buttons.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<title>Bootstrap Counter Step</title>
</head>
<body>
<div class="container mt-5 text-center bg-light text-dark" id="container">
<h2>Counter: <span id="count">0</span></h2>
<div class="btn-group my-3" role="group">
<button id="increment" class="btn btn-primary">+5</button>
<button id="decrement" class="btn btn-danger">-5</button>
<button id="reset" class="btn btn-secondary">Reset</button>
</div>
<button id="theme-btn" class="btn btn-warning">Switch Theme</button>
</div>
<script>
let count = 0;
let step = 5;
let isDark = false;
const countEl = document.getElementById('count');
const container = document.getElementById('container');
document.getElementById('increment').onclick = () => { count += step; countEl.textContent = count; };
document.getElementById('decrement').onclick = () => { count -= step; countEl.textContent = count; };
document.getElementById('reset').onclick = () => { count = 0; countEl.textContent = count; };
document.getElementById('theme-btn').onclick = () => {
  isDark = !isDark;
  container.classList.toggle('bg-dark', isDark);
  container.classList.toggle('text-white', isDark);
  container.classList.toggle('bg-light', !isDark);
  container.classList.toggle('text-dark', !isDark);
};
</script>
</body>
</html>

Bootstrap Language Guide

Bootstrap is a popular open-source CSS framework for building responsive, mobile-first websites. It provides a collection of pre-designed UI components, utilities, and JavaScript plugins to speed up web development.

Primary Use Cases

  • ▸Responsive websites and web apps
  • ▸Landing pages and marketing sites
  • ▸Admin dashboards and internal tools
  • ▸Rapid prototyping
  • ▸Cross-browser compatible UIs

Notable Features

  • ▸12-column responsive grid system
  • ▸Pre-styled components (buttons, forms, cards, navbars)
  • ▸Utility classes for spacing, typography, colors
  • ▸JavaScript plugins for modals, dropdowns, carousels
  • ▸Extensive browser compatibility

Origin & Creator

Created by Mark Otto and Jacob Thornton at Twitter in 2011 as a framework to standardize UI development across internal projects.

Industrial Note

Bootstrap is heavily used in enterprise dashboards, admin panels, marketing websites, and rapid-prototyping projects.

Quick Explain

  • ▸Bootstrap offers a grid system and responsive design out-of-the-box.
  • ▸It includes ready-to-use components like buttons, modals, forms, and navbars.
  • ▸It helps developers quickly create consistent and mobile-friendly UIs.

Core Features

  • ▸Flexbox-based grid layout
  • ▸Typography and color utilities
  • ▸Responsive breakpoints
  • ▸Customizable via Sass variables
  • ▸JavaScript components with jQuery (Bootstrap 4) or vanilla JS (Bootstrap 5+)

Learning Path

  • ▸Learn the grid system and containers
  • ▸Understand components and utilities
  • ▸Practice responsive breakpoints
  • ▸Learn JavaScript plugins
  • ▸Customize with Sass variables

Practical Examples

  • ▸Responsive navbar with dropdowns
  • ▸Form validation with feedback messages
  • ▸Carousel slider with indicators
  • ▸Modal dialog popup
  • ▸Card-based dashboard layout

Comparisons

  • ▸Simpler than full JS frameworks
  • ▸Faster for prototyping than custom CSS
  • ▸Larger than Tailwind in base size
  • ▸More prebuilt components than Materialize
  • ▸Cross-browser consistency out-of-the-box

Strengths

  • ▸Speeds up front-end development
  • ▸Consistent cross-browser styling
  • ▸Large community and documentation
  • ▸Extensive ready-to-use components
  • ▸Responsive design by default

Limitations

  • ▸Websites may look similar without customization
  • ▸Heavy reliance on utility classes can clutter HTML
  • ▸Requires overrides for unique designs
  • ▸Bootstrap 4 relies on jQuery (not Bootstrap 5)
  • ▸Not a full front-end framework (logic needs JS separately)

When NOT to Use

  • ▸When aiming for a fully unique design
  • ▸When avoiding external dependencies
  • ▸When bundle size is critical
  • ▸If you prefer utility-first CSS like Tailwind
  • ▸When building component-heavy SPAs without JS plugins

Cheat Sheet

  • ▸`.container` - fixed-width container
  • ▸`.row` - grid row
  • ▸`.col-*` - grid column
  • ▸`.btn`, `.btn-primary` - buttons
  • ▸`.d-flex`, `.text-center` - utilities

FAQ

  • ▸Is Bootstrap free?
  • ▸Yes - open-source under MIT license.
  • ▸Does Bootstrap include JS?
  • ▸Yes - JS plugins included (modals, tooltips).
  • ▸Is Bootstrap responsive?
  • ▸Yes - mobile-first grid and breakpoints.
  • ▸Can I customize Bootstrap?
  • ▸Yes - via Sass variables and utilities.
  • ▸Which browsers does Bootstrap support?
  • ▸All modern browsers with fallback for IE11 (Bootstrap 4).

30-Day Skill Plan

  • ▸Week 1: Grid + containers
  • ▸Week 2: Typography + utility classes
  • ▸Week 3: Components (buttons, cards, navbars)
  • ▸Week 4: JS plugins (modals, dropdowns)
  • ▸Week 5: Advanced theming and customization

Final Summary

  • ▸Bootstrap is a widely-used, responsive CSS framework.
  • ▸Provides grid system, components, utilities, and JS plugins.
  • ▸Accelerates front-end development.
  • ▸Customizable via Sass for unique designs.
  • ▸Ideal for prototyping, dashboards, and marketing sites.

Project Structure

  • ▸index.html - main page layout
  • ▸assets/css/ - custom styles
  • ▸assets/js/ - optional custom scripts
  • ▸node_modules/bootstrap - installed framework
  • ▸partials/ - reusable components (navbar, footer)

Monetization

  • ▸Build marketing websites quickly
  • ▸Develop dashboard templates
  • ▸Sell Bootstrap themes
  • ▸Bootstrap consulting and training
  • ▸Rapid prototyping services

Productivity Tips

  • ▸Use utility classes to reduce custom CSS
  • ▸Leverage prebuilt components
  • ▸Customize Sass variables early
  • ▸Use CDN for faster development
  • ▸Use browser devtools for responsive testing

Basic Concepts

  • ▸Containers (`.container`, `.container-fluid`)
  • ▸Grid rows (`.row`) and columns (`.col-*`)
  • ▸Responsive breakpoints (`sm`, `md`, `lg`, `xl`, `xxl`)
  • ▸Typography and utility classes
  • ▸Components: buttons, forms, navbars, cards

Official Docs

  • ▸https://getbootstrap.com/
  • ▸https://github.com/twbs/bootstrap
  • ▸https://getbootstrap.com/docs/

More Bootstrap Typing Exercises

Bootstrap Simple CounterBootstrap Counter with Min/MaxBootstrap Counter with Auto IncrementBootstrap Counter with Double Increment

Practice Other Languages

CReactPythonC++RustTypeScriptKotlinPHPJavaC#RubyMqlCqlN1qlCypher