Let's look at a straightforward example where we make a button's hover effect. The button will gracefully change in width and background color as the user hovers over it.
| <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSS Transition Example</title> <style> .transition-button { padding: 10px 20px; background-color: #4CAF50; /* Green */ color: white; border: none; transition-property: background-color, width; transition-duration: 0.5s; transition-timing-function: ease-in-out; } .transition-button:hover { background-color: #555; /* Darker gray */ width: 150px; /* Increase width */ } </style> </head> <body> <button class="transition-button">Hover over me!</button> </body> </html> |
Explanation of code
HTML structure
CSS Styling
Content, padding, border, and margin make up the box model.
Relative moves from original position; absolute positions relative to nearest positioned ancestor.
id is unique; class can be reused.
Minify files, reduce specificity, and remove unused styles.
Overrides all other declarations, regardless of specificity.
Use margin: auto or flexbox/grid techniques.
Allow responsive design by applying styles based on screen size or device.
Define relationships between selectors: descendant ( ), child (>), adjacent (+), sibling (~).
Tools like SASS or LESS add features like variables and nesting to CSS.
Targets part of an element, like ::before or ::after.
Use @import "filename.css"; at the top of the file.
Controls stacking order of overlapping elements.
Forces a property to inherit value from parent.
Static — not affected by top, bottom, left, or right.
Use universal selector * or define styles in body/root.
em is relative to parent; rem is relative to root element.
Inline, internal (embedded), and external CSS.
A layout model for arranging elements in rows or columns with flexible sizing.
Targets elements in a specific state, like :hover or :nth-child().
Use fluid layouts, media queries, and relative units.
CSS styles HTML elements to control layout, color, fonts, and responsiveness.
Reusable custom property values, declared with --var-name.
Determines which rule applies when multiple rules target the same element.
Performs calculations to dynamically set CSS property values.
Copyrights © 2024 letsupdateskills All rights reserved