Home > Article > Web Front-end > How to Create a Left-to-Right Background Color Fill with CSS Hover Effects?
Creating Left-to-Right Background Color Fill with CSS
In CSS3, hover effects can be enhanced using transitions to create dynamic visual effects. One common scenario is filling an element's background from left to right with a different color upon hover. To achieve this:
Step 1: Use a Linear Gradient
Utilize a linear gradient to establish the background color transition. Define two colors with a clear division at 50% (e.g., red before 50%, blue after 50%).
Step 2: Scale and Position the Gradient
Scale the background to be twice the element's width and 100% height (e.g., background-size: 200% 100%;). Position the gradient to the right of the element.
Step 3: Create the Hover Transition
On hover, modify the background position to 'left'. Couple this with a transition (e.g., transition: all 2s ease;) to animate the position change.
Example Code:
<code class="css">background: linear-gradient(to left, red 50%, blue 50%) right; background-size: 200% 100%; /* On hover */ background-position: left;</code>
Optional Enhancements:
To control the transition's color, increase the background width to 300% and fine-tune the start and end percentages of the gradient (e.g., 34% for start, 65% for end).
Browser Support:
Consider prefixing the transition property for cross-browser compatibility.
The above is the detailed content of How to Create a Left-to-Right Background Color Fill with CSS Hover Effects?. For more information, please follow other related articles on the PHP Chinese website!