Summarize this article with:

A clunky search bar kills the browsing experience. Users expect smooth, responsive input fields that actually feel good to use.

These CSS search box examples show how a few lines of code transform basic form elements into polished interface components.

You’ll find practical code snippets for morphing animations, expanding inputs, icon transformations, and full-screen overlays.

Each example includes working CSS you can copy directly into your projects.

Whether you’re building a clean frontend or need complex autocomplete dropdowns, these patterns cover the full range of search bar styling techniques.

No fluff. Just code that works.

What is a CSS Search Box

A CSS search box is a form input element styled with Cascading Style Sheets that lets users enter search queries on websites.

Web developers combine HTML input fields with CSS properties to create functional, visually appealing search interfaces.

The basic structure uses a form element containing an input field with type="search" or type="text".

CSS handles everything visual: border radius, box shadow, placeholder text styling, focus states, and animation effects.

Search bars appear in website headers, sidebars, and content areas.

They serve as primary navigation tools that improve user experience by helping visitors find content quickly.

Where is web design headed next?

Discover the latest web design statistics: industry growth, design trends, technology adoption, and insights defining the future of the web.

Explore the Data →

A well-designed search input field reduces bounce rates and increases time on site.

CSS Search Boxes Examples To Check Out

Basic CSS Search Bar

See the Pen
Basic css search bar
by Özlem Altınışık (@Ozlem_Altinisik)
on CodePen.


Search Bar Animation

See the Pen
Search bar animation
by Milan Milošev (@MilanMilosev)
on CodePen.

Desktop Search Box

See the Pen
Desktop search box – HTML5 – CSS3 – JS – JQuery
by The National Archives (@TNA-WEB-TEAM)
on CodePen.

Minimal Search Bar

See the Pen
Minimal Search Bar
by Lil Skywalkr (@ragnvaldpl)
on CodePen.

Animated Search Form With Micro Interactions

See the Pen
Animated Search Form With Micro Interactions | #1
by Himalaya Singh (@himalayasingh)
on CodePen.

Filter Search Box / Dropdown Animation

See the Pen
Filter search box / dropdown animation
by buğra koçak (@bugrakocak)
on CodePen.

Header Search

See the Pen
Header Search
by Aleksandar Čugurović (@choogoor)
on CodePen.

Bouncy Search Box

See the Pen
Bouncy search box
by Guillaume Schlipak (@Schlipak)
on CodePen.

Animated Search Input

See the Pen
Animated search input
by Lucas Henrique (@lhenrique)
on CodePen.

Simple On-Click Search Field Interaction

See the Pen
Simple Search Field (Pure CSS)
by Charlie Marcotte (@FUGU22)
on CodePen.

Beautiful CSS3 Search form

See the Pen
Beautiful CSS3 Search form
by Memphis (@Memphis)
on CodePen.

Expanding Input

See the Pen
Expanding Input
by Steve Gardner (@ste-vg)
on CodePen.

Wobbly Search Bar

See the Pen
search bar 🤨
by Lucagez (@lucagez)
on CodePen.

Highlight Search Keyword In Text

Animated Search Interaction

See the Pen
Animated Search Interaction
by Jon Kantner (@jkantner)
on CodePen.

Mobile Splash Search Box

See the Pen
Mobile Splash Search Box
by nullqube (@nullqube)
on CodePen.

Custom Animated Search Box

See the Pen
Animated input search
by co0kie (@co0kie)
on CodePen.

Search Field Animation

See the Pen
Search field animation
by Aaron Iker (@aaroniker)
on CodePen.

Slide Down Search Box

See the Pen
Slide-Down Search-Box (with Data-url embedded icon-font)
by Bram de Haan (@atelierbram)
on CodePen.

Full Screen Animated Search Box

See the Pen
Full Screen Search
by Dan Smith (@dapacreative)
on CodePen.

Simply Awesome Soft Search Box with tutorial

See the Pen
Simply Awesome Soft Search Box with tutorial.
by nikhil (@nikhil)
on CodePen.

Search Box V.2

See the Pen
Search box v.2 (CSS Only)
by Takane Ichinose (@takaneichinose)
on CodePen.

Material Full-Screen Search Transition

See the Pen
Material Fullscreen Search Transition
by Luca Dimola (@hone)
on CodePen.

Animated Search Box by Arifayan Idowu Olatubosun

See the Pen
animated search box
by Arifayan Idowu Olatubosun (@Stizzle213)
on CodePen.

Full Page Animated Search Box

See the Pen
Animated Search Box
by Chouaib Belagoun 👋 (@chouaibblgn45)
on CodePen.

Fancy Search Box

See the Pen
Fancy Search Box // SVG + CSS + jQuery
by Tommy Small (@tommysmall92)
on CodePen.

CSS Effect For Search Input

See the Pen
CSS effect for search input
by Mihael Tomić (@mihaeltomic)
on CodePen.

Awesome Search Box

See the Pen
Awesome Search Box – Using Only HTML & CSS
by Ahmad Emran (@ahmadbassamemran)
on CodePen.

Emoji Search Snippet

Search Box Focus Effect

See the Pen
Search Box Focus Effect
by Chris Smith (@chris22smith)
on CodePen.

Pure CSS expanding search Box

See the Pen
UI #2 – Search Bar
by Jove Angelevski (@AlbertFeynman)
on CodePen.

Menu + Animated Search Box

See the Pen
Menu + Animated Search Box
by André Cortellini (@AndreCortellini)
on CodePen.

Google Metro Flatten

See the Pen
Google Metro Flatten
by nau.val(); (@pedox)
on CodePen.

Cool Animated Search Box

See the Pen
Animated Search Box
by Alex Tkachev (@alexpopovich)
on CodePen.

Multi Search with Combo Box

See the Pen
multi search with combo box
by John McGarrah (@freshmasterj)
on CodePen.

Cool Search Boxes

See the Pen
Cool Search Boxes
by Keenan Staffieri (@keenode)
on CodePen.

Simple Animated Search input box

See the Pen
Search input context animation
by Riccardo Zanutta (@rickzanutta)
on CodePen.

Skeuomorphic Search Input

See the Pen
Search input context animation
by Riccardo Zanutta (@rickzanutta)
on CodePen.

Search Text Field With Icon To Search Result In Card UI

See the Pen
Search field animation
by Aaron Iker (@aaroniker)
on CodePen.

How Does a CSS Search Box Work

The search form relies on three layers: HTML structure, CSS styling, and optional JavaScript functionality.

HTML Form Structure

The form element wraps an input field and submit button.

Semantic markup uses <form>, <input>, <button>, and <label> elements.

The input accepts user text while the button triggers form submission.

CSS Styling Cascade

Styles apply through selectors targeting form elements.

The cascade determines which rules take priority based on specificity.

Pseudo-classes like :focus, :hover, and :focus-within handle interactive states.

Browser Rendering

Each browser renders form inputs with default styles.

Chrome, Firefox, Safari, and Edge interpret CSS differently, so cross-browser compatibility testing matters.

Normalize.css or CSS resets help create consistent baselines across browsers.

JavaScript Enhancement

Optional scripting adds autocomplete dropdowns, live search results, and micro-interactions.

Ajax requests fetch results without page reloads.

Pure CSS solutions work for basic animations; complex interactions need JavaScript.

CSS Search Box Styling Properties

These properties control how search inputs look and behave.

Border and Shape Properties

  • border-radius creates rounded corners (use 50px or higher for pill shapes)
  • border defines outline thickness, style, and color
  • outline controls focus indicators separate from borders

Shadow and Depth

  • box-shadow adds depth effects and floating appearance (try our CSS Box Shadow Generator)
  • Multiple shadows stack for layered effects
  • Inset shadows create pressed or recessed looks

Animation Properties

  • transition smooths property changes over time
  • transform handles scale, rotation, and position changes
  • CSS keyframes enable complex multi-step animations

Layout Properties

  • Flexbox positions icons inside inputs
  • Grid systems align search components
  • position: absolute places icons precisely within containers

Text and Placeholder Styling

  • ::placeholder pseudo-element styles hint text
  • font-family, font-size, and color control typography
  • padding creates internal spacing around text

Morphing Search Box

The morphing search box transforms from a compact icon into an expanded input field.

This pattern saves space on smaller screens and adds visual interest to the user interface.

The CSS Technique

The :focus-within pseudo-class detects when any child element receives focus.

Apply it to the parent container to trigger width expansion, background color changes, and icon transformations simultaneously.

Code Structure

.search-container { width: 50px; transition: width 0.4s ease; }

.search-container:focus-within { width: 250px; }

.search-container input { width: 100%; opacity: 0; transition: opacity 0.2s ease; }

.search-container:focus-within input { opacity: 1; } `

When to Use This Pattern

Works best for headers with limited horizontal space.

Common in mobile-first designs and minimalist layouts.

Avoid on sites where search is the primary action; users expect visible inputs.

Expanding Search Box

The expanding search bar animation uses CSS transitions to grow the input width when activated.

Unlike morphing boxes, this starts as a visible but narrow field.

Animation Technique

Width transitions drive the expansion effect.

Timing functions like cubic-bezier create natural-feeling motion.

The transform: scaleX() property offers GPU-accelerated alternatives to width animation.

Code Example

` .search-input { width: 120px; padding: 10px 15px; border: 2px solid #ddd; border-radius: 25px; transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1); }

.search-input:focus { width: 280px; border-color: #007bff; outline: none; } `

Browser Support

CSS transitions work in all modern browsers.

IE10+ supports basic transitions; older browsers show instant changes without animation.

Use media queries to adjust expansion width for different viewport sizes.

Minimal Search Box with Icon

A minimal search bar strips away decoration and focuses on clean functionality.

The magnifying glass icon serves as the visual cue; no labels or extra buttons needed.

Icon Placement Methods

Two approaches dominate: position: absolute within a relative container, or flexbox alignment.

Flexbox handles responsive scaling better; absolute positioning offers pixel-perfect control.

Icon Options

  • SVG inline icons scale without quality loss and accept CSS color changes
  • Font Awesome provides ready-made search icons via CSS classes
  • Bootstrap icons work within Bootstrap projects without extra dependencies

Code Structure

` .search-wrapper { position: relative; display: inline-block; }

.search-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #888; }

.search-input { padding: 10px 15px 10px 40px; border: 1px solid #e0e0e0; border-radius: 8px; } `

Full-Screen Search Overlay

The full-screen overlay transforms search into an immersive experience.

Click the search icon and a modal covers the entire viewport with a focused input field.

Overlay Pattern

Fixed positioning with inset: 0 stretches the container edge-to-edge.

High z-index values (999+) ensure the overlay sits above all other content.

CSS Implementation

` .search-overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.95); display: flex; align-items: center; justify-content: center; z-index: 1000; opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s; }

.search-overlay.active { opacity: 1; visibility: visible; }

.search-overlay input { width: 60%; font-size: 2rem; background: transparent; border: none; border-bottom: 2px solid #fff; color: #fff; } `

Use Cases

Common on portfolio sites, creative agencies, and content-heavy platforms.

Not ideal for e-commerce where quick, repeated searches happen frequently.

Search Box with Autocomplete Dropdown

Autocomplete suggestions appear as users type, reducing keystrokes and guiding toward results.

Dropdown Styling

Position the dropdown absolutely beneath the input with matching width.

Shadow effects create visual separation from background content.

` .autocomplete-dropdown { position: absolute; top: 100%; left: 0; right: 0; background: #fff; border: 1px solid #ddd; border-top: none; border-radius: 0 0 8px 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.1); max-height: 300px; overflow-y: auto; }

.autocomplete-item { padding: 12px 15px; cursor: pointer; }

.autocomplete-item:hover { background: #f5f5f5; } `

Accessibility Considerations

Add ARIA attributes: role=”listbox” on dropdown, role=”option” on items.

Keyboard navigation needs arrow key support and Enter to select.

Animated Search Box with Icon Transformation

The search icon morphs into a close button or transforms shape during interaction.

These hover effects add personality without sacrificing function.

Morphing Icon Technique

Pseudo-elements (::before, ::after) create icon parts that animate independently.

CSS transforms rotate, scale, and reposition elements to form new shapes.

Code Example

` .search-icon { width: 20px; height: 20px; border: 2px solid #333; border-radius: 50%; position: relative; transition: all 0.3s ease; }

.search-icon::after { content: ”; position: absolute; width: 8px; height: 2px; background: #333; bottom: -4px; right: -4px; transform: rotate(45deg); transition: all 0.3s ease; }

.active .search-icon { border-radius: 0; transform: rotate(45deg); }

.active .search-icon::after { transform: rotate(90deg); bottom: 8px; right: 8px; } `

Responsive Search Box for Mobile

Mobile search boxes need larger touch targets and adaptive layouts.

Responsive design ensures the search field works across all screen sizes.

Touch Target Requirements

Minimum 44×44 pixel touch areas prevent mis-taps.

Increase padding on mobile rather than shrinking the input.

Media Query Adjustments

` .search-input { width: 100%; padding: 12px 16px; font-size: 16px; / Prevents iOS zoom / }

@media (min-width: 768px) { .search-input { width: 300px; padding: 10px 14px; } }

@media (min-width: 1024px) { .search-input { width: 400px; } } `

Mobile-Specific Patterns

Full-width search bars work better than icon-only patterns on mobile.

Consider a hamburger menu that reveals hidden search on tap.

Search Box with Colored Background Effect

Background color shifts on focus create clear visual feedback for users.

Color Transition Approach

Transition background-color and border-color properties together.

Subtle shifts (gray to white, light blue tint) work better than dramatic changes.

` .search-input { background: #f5f5f5; border: 2px solid transparent; transition: background 0.2s, border-color 0.2s; }

.search-input:focus { background: #fff; border-color: #007bff; outline: none; } `

Brand Color Integration

Match focus states to site accent colors for cohesive visual hierarchy.

Use CSS gradients for more complex background effects.

How to Create a CSS Search Box

Build a search form from scratch following these steps.

HTML Structure for Search Forms

` <form class="search-form" role="search"> <label for="search" class="sr-only">Search</label> <input type="search" id="search" name="q" placeholder="Search..." autocomplete="off" > <button type="submit" aria-label="Submit search"> <svg>...</svg> </button> </form> `

The role=”search” landmark helps screen readers identify the form purpose.

Basic CSS Styling for Input Fields

` .search-form { display: flex; align-items: center; max-width: 400px; }

.search-form input { flex: 1; padding: 12px 16px; border: 1px solid #ddd; border-radius: 8px 0 0 8px; font-size: 1rem; }

.search-form button { padding: 12px 16px; background: #007bff; border: none; border-radius: 0 8px 8px 0; cursor: pointer; } `

Adding the Search Icon

Inline SVG in HTML gives full CSS control over color and size.

Set fill: currentColor to inherit text color from parent elements.

Focus State Styling

` .search-form input:focus { outline: none; border-color: #007bff; box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.15); } `

Never remove focus outlines without providing visible alternatives.

Animation and Transitions

Add transition to properties that change on interaction.

Keep durations between 150ms and 400ms for responsive-feeling interfaces.

CSS Search Box Browser Compatibility

Modern CSS features have varying support levels across browsers.

Feature Support Overview

  • Flexbox: 99%+ global support, safe to use everywhere
  • CSS Transitions: Full support in all modern browsers
  • :focus-within: No IE support; works in Edge, Chrome, Firefox, Safari
  • CSS Custom Properties: No IE11 support; consider fallbacks for legacy projects

Testing Recommendations

Check Can I Use database before implementing newer features.

Chrome DevTools device mode simulates different browsers and viewports.

Accessibility for CSS Search Boxes

Web accessibility ensures everyone can use your search functionality.

Required ARIA Labels

  • role=”search” on the form element
  • aria-label on inputs without visible labels
  • aria-expanded for autocomplete dropdowns

Focus Indicators

Visible focus states help keyboard users track their position.

Minimum 3:1 color contrast between focus indicator and background.

Keyboard Navigation

  • Tab moves focus into and out of the search form
  • Enter submits the search
  • Escape closes autocomplete dropdowns
  • Arrow keys navigate suggestion lists

Screen Reader Support

Hidden labels (.sr-only class) provide context without visual clutter.

Announce dynamic results with aria-live regions.

FAQ on CSS Search Box Examples

How do I style a search box in CSS?

Target the input element with CSS selectors and apply properties like border-radius, padding, border, and background-color.

Add :focus pseudo-class styles for interactive states.

Use transition properties for smooth animation effects between states.

How do I add a search icon inside an input field?

Wrap the input in a container with position: relative.

Place the icon element inside and apply position: absolute with left or right values.

Add left padding to the input so text doesn’t overlap the icon.

What is the best CSS framework for search box styling?

Bootstrap offers ready-made input components with minimal setup.

Tailwind CSS provides utility classes for custom designs.

Pure CSS works fine for simple search bars without framework dependencies.

How do I make a search box expand on click?

Set a narrow initial width on the input.

Use the :focus pseudo-class to increase width when clicked.

Add transition: width 0.3s ease for smooth expansion animation between collapsed and expanded states.

How do I create a responsive search bar?

Use percentage-based or viewport-relative widths instead of fixed pixel values.

Apply media queries to adjust sizing at different breakpoints.

Set font-size: 16px minimum to prevent iOS zoom on focus.

How do I style the placeholder text in a search input?

Use the ::placeholder pseudo-element selector.

Apply color, font-style, and opacity properties to customize appearance.

Include vendor prefixes (::-webkit-input-placeholder) for older browser support if needed.

Can I create an animated search box without JavaScript?

Yes. Pure CSS transitions and the :focus-within pseudo-class handle most animation patterns.

Morphing icons, expanding widths, and color changes work without scripting.

Complex autocomplete features still require JavaScript.

How do I make a search box accessible?

Add role=”search” to the form element.

Include a

Maintain visible focus indicators and ensure sufficient color contrast ratios for all states.

What is the focus-within pseudo-class?

The :focus-within selector targets a parent element when any child receives focus.

It enables styling changes on containers based on input focus state.

Works in all modern browsers except Internet Explorer.

How do I add a submit button to a CSS search box?

Place a

Use flexbox on the form container to align input and button horizontally.

Style with matching border-radius values for a connected appearance.

Conclusion

These CSS search box examples give you ready-to-use code for any project.

From morphing animations to full-screen overlays, each pattern solves a specific design problem.

The key takeaway? Start simple.

A clean input field with proper focus states beats an over-animated search bar every time.

Add complexity only when it serves the usability of your site.

Test your search forms across Chrome, Firefox, Safari, and Edge.

Check touch targets on mobile devices.

Run keyboard navigation tests for accessible forms.

Copy the code snippets that fit your needs.

Tweak the border-radius`, adjust the shadow values, match colors to your brand.

Your custom search box is just a few CSS properties away from looking professional.

Author

Bogdan Sandu specializes in web and graphic design, focusing on creating user-friendly websites, innovative UI kits, and unique fonts.Many of his resources are available on various design marketplaces. Over the years, he's worked with a range of clients and contributed to design publications like Designmodo, WebDesignerDepot, and Speckyboy, Slider Revolution among others.