CSS or Cascading Style Sheet is a powerful tool that provides a set of properties for aligning and positioning elements on a web page. The align-self property is one of many properties available in CSS to adjust the alignment of individual Flex items within a Flex container. By default, align-self is set to auto, which means that the element will inherit the alignment of its parent container. However, this behavior can be changed for individual Flex projects by setting the align-self property.
scc selector{ align-self: auto; }
Before we discuss how to reset the align-self property to its default value, it is important to understand what align-self is. The align-self property is a subproperty of the flex shorthand property; it is used to align a single flex item along the horizontal axis of the container. The default value of the align-self attribute is auto, which causes the element to inherit the align-items attribute of its parent container. The align-self attribute can be set to one of the following values -
Auto (default),
Flex starts,
Flex side,
center,
baseline, and
Stretch
If the align-self attribute is set to a value other than auto, it will override the align-items attribute of the container for that specific element.
To reset the align-self attribute to its default value, simply remove the attribute's auto value from the element's CSS declaration. For example
.element { align-self: center; }
When the align-self attribute is removed from the declaration, it is reset to its default value.
.element { /* align-self: center; */ }
Now, we will explore a few examples of resetting the align-self property to its default value in CSS.
An easy way to reset the align-self attribute to its default value is to set it to auto. When the value of align-self is set to auto, Flex items will be aligned according to the value of the align-items property set on the Flex container.
In this example, we will use the auto value to select all .item elements that do not have a .div1 or .div3 class and set their align-self attribute to auto. This will ensure that only .div1 and .div3 and elements have custom align-self values.
<!DOCTYPE html> <html> <head> <style> body { text-align: center; } .container { display: flex; justify-content: center; align-items: center; height: 200px; background-color: lightgray; } .item { width: 100px; height: 50px; background-color: white; border: 1px solid black; margin: 10px; } .div1 { align-self: flex-start; } .div2 { align-self: auto; } .div3 { align-self: flex-end; } </style> </head> <body> <h3>Set align-self property to its default value using the align-self:auto</h3> <div class="container"> <div class="item div1">HTML</div> <div class="item div2">CSS</div> <div class="item div3">JavaScript</div> </div> </body> </html>
:not() selector is another way to reset the align-self property to its default value. This selector allows selecting all elements that do not meet certain criteria. Using the :not() selector we can select all elements except those to which we want to apply a specific align-self value.
In this example, we will use the :not() selector to select all .item elements that do not have a .box1 or .box3 class, and set their align-self attribute to auto. This will ensure that only .box1 and .box3 and elements have custom align-self values.
<!DOCTYPE html> <html> <head> <style> h1, h3{ text-align:center;} .container { display: flex; justify-content: center; align-items: center; height: 200px; background-color: lightgray; } .item:not(.box1):not(.box3) { align-self: auto;} .item { width: 100px; height: 50px; border: 1px solid black; margin: 10px; background-color:pink; } .box1 { align-self: flex-start; background-color:lightgreen;} .box3 { align-self: flex-end; background-color:lightblue; } </style> </head> <body> <h3>Set align-self property to its default value using the :not() selector</h3> <div class="container"> <div class="item box1">Java</div> <div class="item">Python</div> <div class="item box3">PHP</div> </div> </body> </html>
align-self property is a powerful tool for setting the vertical alignment of Flex items within a Flex container. However, sometimes we may need to reset the align-self property in CSS to its default value. By resetting the align-self property to its default value of auto, or using align-items instead, we can simplify the CSS and avoid alignment issues.
The above is the detailed content of How to set align-self property to its default value in CSS?. For more information, please follow other related articles on the PHP Chinese website!