How to Add Custom CSS in Elementor (Free and Pro Methods)

On this page
Elementor covers most design needs, but sometimes you want a detail it doesn't offer: a custom hover effect, a gradient border or hiding an element on one screen size. A few lines of custom CSS solve it. Here is where to put them.
Method 1: Per widget (Elementor Pro)
- Select the widget, container or section.
- Go to Advanced > Custom CSS.
- Use the keyword
selectorto target that element:
selector .elementor-button:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(0,0,0,.15);
}
The CSS only affects that element, so it can't break other pages.
Method 2: Site-wide (Elementor Pro)
Open Site Settings > Custom CSS in the Elementor editor for rules that apply everywhere.
Method 3: Free method with CSS classes
- Select the element and in Advanced > CSS Classes enter a name such as
fancy-card(no dot). - Go to Appearance > Customize > Additional CSS and add:
.fancy-card {
border-radius: 16px;
border: 2px solid #6366f1;
}
Block themes add CSS under Appearance > Editor > Styles > Additional CSS.
Responsive CSS
@media (max-width: 767px) {
.fancy-card { padding: 16px; }
}
When CSS doesn't apply
- Regenerate CSS in Elementor > Tools and clear your cache plugin.
- Use the browser's Inspect tool to find the right class.
- Make the selector more specific instead of adding
!importanteverywhere.
Lots of code? A child theme is the tidy place for it.
Frequently asked questions
Can I add custom CSS in free Elementor?
The per-widget Custom CSS field is a Pro feature. In free Elementor, use Appearance > Customize > Additional CSS, or give elements a CSS class and style it there.
What does 'selector' mean in Elementor CSS?
In Elementor Pro's Custom CSS field, the word selector targets the current element, so selector .elementor-heading-title only affects that widget.
Why isn't my CSS working?
Check for typos, clear Elementor's CSS cache (Elementor > Tools > Regenerate CSS & Data) and your caching plugin, and make your selector specific enough.
Will custom CSS survive theme updates?
Yes, if it is in Elementor, the Customizer or a child theme. Never edit the parent theme's style.css.


