CSS Anchor Positioning: Create Tooltips and Popovers Without JavaScript

Code Beast
Code Beast
October 15, 2026 · 5 min read
CSS Anchor Positioning: Create Tooltips and Popovers Without JavaScript

Have you ever attempted to put a menu beneath a button only to discover that it shifts out of position when the screen changes? This issue is common in web development.

Developers have frequently relied on JavaScript to maintain tooltips, dropdown menus and popovers in the place. However CSS now offers another possibility: CSS Anchor Positioning.

With this feature you can position one element according to another using CSS. It can simplify layout tasks and cut down on extra code that you must write.

Sponsored
Write on GuestCountry

Publish articles, poems and stories. Get paid directly to UPI or bank account.

Use code TAKE50 for 50% OFF on Gold Plan

Let us examine how it works and where you can apply it.

What Is CSS Anchor Positioning?

CSS Anchor Positioning allows you to link the position of one element to another. The element that you use as a reference is called an anchor.

For example imagine a button that shows a message when a user interacts with it. You want that message to remain close to the button even if the page layout changes.

Of calculating the buttons coordinates with JavaScript you can use CSS Anchor Positioning to instruct the browser where the message must appear.

CSS Anchor Positioning can be useful for menus, tooltips, popovers and other floating items.

How Does CSS Anchor Positioning Work?

To use this feature you first assign an anchor name to an element. Then you connect another element to that anchor.

```css

.button {

anchor-name: --my-button;

}

.tooltip {

position:

position-anchor: --my-button;

top: anchor(bottom);

left: anchor(left);

}

```

In this example the button serves as the anchor and the tooltip is positioned underneath it.

The anchor-name property designates the button. The position-anchor property tells the tooltip which element to follow. The anchor() function assists in setting its position.

When these properties are in place the browser can position the tooltip according to the button without relying on calculated coordinates.

Creating Dropdown Menus with CSS

menus are another good example where CSS Anchor Positioning can be helpful.

Consider a website navigation bar that contains a Products button. When visitors open the menu you want it to appear below the button.

You can set up the relationship as follows:

```

.products-button {

anchor-name: --products;

}

.products-menu {

position: absolute;

position-anchor: --products;

top: anchor(bottom);

left: anchor(left);

}

```

This CSS places the menu below the Products button and aligns the left edges of both items.

Course building a functional dropdown involves more than positioning. You still need to manage opening and closing keyboard navigation and accessibility.

What If the Element Doesn't Fit on the Screen?

Floating elements sometimes lack space to appear exactly where you want them.

For example a tooltip positioned above a button might be cut off if the button sits near the top of the screen.

This is where fallback positioning can assist.

CSS Anchor Positioning includes options that allow the browser to attempt a position when the preferred one does not fit.

The position-try-fallbacks property can be used to define placements. Depending on the layout a tooltip might appear below the button of above it.

This can reduce the necessity of writing JavaScript that checks space and moves the element manually.

Does CSS Anchor Positioning Replace JavaScript?

Not entirely. JavaScript remains useful for interactions and features that require custom behavior.

However many basic positioning tasks can now be managed directly with CSS.

This means developers may not require as JavaScript for simple tooltips, menus and popovers.

CSS Anchor Positioning can also work together with the Popover API.

The Popover API helps control when a popover opens or closes while CSS Anchor Positioning determines where it appears.

Together these features can make floating interface elements easier to build and maintain.

Things to Check Before Using It

Before adding CSS Anchor Positioning to a website verify whether the feature is supported in your target browsers.

It is also an idea to test the layout, on various screen sizes and ensure that interactive elements work with a keyboard.

If some browsers do not support the feature you can provide a fallback layout.

This approach is known as enhancement.

Remember that correct positioning alone does not make a component accessible. Users must still be able to understand, navigate and interact with content easily.

Frequently Asked Questions

What is CSS Anchor Positioning used for?

CSS Anchor Positioning helps position elements such as tooltips, dropdown menus and popovers to other elements.

Do I need JavaScript to use CSS Anchor Positioning?

No. Basic positioning can be handled with CSS although interactive features may still require JavaScript.

Does CSS Anchor Positioning replace the Popover API?

No. The Popover API manages popover behavior while CSS Anchor Positioning controls placement.

Can I use CSS Anchor Positioning on a website?

Yes if CSS Anchor Positioning meets browser support requirements. Test CSS Anchor Positioning carefully. Provide fallbacks where needed.

Final Thoughts

Keeping tooltips and dropdown menus in the place has always been a small but sometimes frustrating part of web development. CSS Anchor Positioning offers a way to handle many of these situations.

With properties such, as anchor-name, position-anchor and anchor() developers can connect elements and control placement without writing much custom positioning code.

CSS Anchor Positioning will not replace JavaScript for every task. It is a useful feature to understand as CSS continues to improve.

At The Code Beast keeping up with web technologies helps us explore better ways to build websites that are functional, responsive and easier to maintain.

More from Code Beast

Custom WordPress Website Development: Benefits, Costs, and Best Practices
Code Beast Code Beast

Custom WordPress Website Development: Benefits, Costs, and Best Practices

Custom WordPress website development is the process of building a website on the WordPress platform

Jul 11, 2026 · 130

Recommended for you

Top 10 Situations Where an Instant ₹50,000 Personal Loan Can Be a Smart Financial Choice
bankcreds bankcreds

Top 10 Situations Where an Instant ₹50,000 Personal Loan Can Be a Smart Financial Choice

Jul 24, 2026 · 89
How Does a Shot Blasting Machine Work? Guide
jassi jassi

How Does a Shot Blasting Machine Work? Guide

Oct 13, 2026 · 12
Turn Your Idea Into an App with Dubai's Leading Development Team
marianjures marianjures

Turn Your Idea Into an App with Dubai's Leading Development Team

Jun 9, 2026 · 118
The Ultimate Guide to Business Traveler Flight Deals in India: Save Big on Every Trip
HolidayBreakz_India HolidayBreakz_India

The Ultimate Guide to Business Traveler Flight Deals in India: Save Big on Every Trip

Jun 8, 2026 · 107
Best Couples Massage in Las Vegas: What to Expect Before Your Visit
vegasasianbaby vegasasianbaby

Best Couples Massage in Las Vegas: What to Expect Before Your Visit

Oct 1, 2026 · 63
How to Prepare for Exams in an MBA Degree Correspondence When You Haven't Studied in Years
Sunil Sunil

How to Prepare for Exams in an MBA Degree Correspondence When You Haven't Studied in Years

Worried about exams after a long gap? Read my 5 tips on crushing your MBA Degree Correspondence exam

Aug 20, 2026 · 77
Sign up to keep reading · It's free