N
The Daily Insight

How do I center an icon vertically in CSS?

Author

Abigail Rogers

Updated on March 03, 2026

To vertically center a single line of text or an icon within its container, we can use the line-height property. This property controls the height of a line in a run of text and adds an equal amount of space above and below the line-box of inline elements.

Similarly one may ask, how do I center an image vertically in CSS?

Answer: Use the CSS vertical-align Property

You can align an image vertically center inside a <div> by using the CSS vertical-align property in combination with the display: table-cell; on the containing div element.

Secondly, how do I center vertically and horizontally in CSS? To center both vertically and horizontally, use padding and text-align: center : I am vertically and horizontally centered.

Similarly, you may ask, how do I center align vertically in CSS?

The CSS just sizes the <div> , vertically center aligns the <span> by setting the <div> 's line-height equal to its height, and makes the <span> an inline-block with vertical-align: middle . Then it sets the line-height back to normal for the <span> , so its contents will flow naturally inside the block.

How do I center a button in CSS?

You can Center Align CSS Button using the following method:

  1. text-align: center - By setting the text-align property of parent div tag to the center.
  2. margin: auto - By setting margin property to auto.
  3. position: fixed - By setting position property to fixed.
  4. display: flex - By setting the display property to flex.

Related Question Answers

How do you center absolute position vertically?

Absolute Position

A common technique for both horizontal and vertical centering is using an absolute positioned element as child of a relative parent. What we do is basically position our child element left by 50% and we shift it back by half of its size using a negative 50% translateX in order to get it centered.

How do you vertically align text?

Center the text vertically between the top and bottom margins
  1. Select the text that you want to center.
  2. On the Layout or Page Layout tab, click the Dialog Box Launcher.
  3. In the Vertical alignment box, click Center.
  4. In the Apply to box, click Selected text, and then click OK.

How do you vertically align elements?

Just set the cell and table height and with to 100% and you can use the vertical-align. A one-cell table inside the div handles the vertical-align and is backward compatible back to the Stone Age! using display flex, first you need to wrap the container of the item that you want to align.

How do I align an image to the center?

To center an image using text-align: center; you must place the <img> inside of a block-level element such as a div . Since the text-align property only applies to block-level elements, you place text-align: center; on the wrapping block-level element to achieve a horizontally centered <img> .

How do I center an image vertically?

You can also use the line-height method; just as you would to vertically align a single line of text. Set the image's container to a specific height and also give it a line-height with the same value as the height. Then give the image inside the container a display: inline-block or just inline.

How do I put an image in the middle in CSS?

To center an image, we have to set the value of margin-left and margin-right to auto and make it a block element by using the display: block; property. If the image is in the div element, then we can use the text-align: center; property for aligning the image to center in the div.

How do I align vertically in Flexbox?

Vertical alignment using align-self
  1. flex-start : align to the top of the container.
  2. flex-end : align to the bottom of the container.
  3. center : align at the vertical center of the container.
  4. baseline : display at the baseline of the container.
  5. stretch : items are stretched to fit the container.

How do you center vertically in HTML?

For vertical alignment, set the parent element's width / height to 100% and add display: table . Then for the child element, change the display to table-cell and add vertical-align: middle . For horizontal centering, you could either add text-align: center to center the text and any other inline children elements.

How do I vertically align a div?

You use the :before css attribute to insert a div into the beginning of the parent div, give it display:inline-block and vertical-align:middle and then give those same properties to the child div. Since vertical-align is for alignment along a line, those inline divs will be considered a line.

How do I vertically align text in a div?

Answer: Use the CSS line-height property

Suppose you have a div element with the height of 50px and you have placed some link inside the div that you want to align vertically center. The simplest way to do it is — just apply the line-height property with value equal to the height of div which is 50px .

How do you center an absolute position in CSS?

To center an element using absolute positioning, just follow these steps:
  1. Add left: 50% to the element that you want to center.
  2. Add a negative left margin that is equal to half the width of the element.
  3. Next, we'll do a similar process for the vertical axis.
  4. And then add a negative top margin equal to half its height.

How do you center a float in CSS?

There is no way to float center in CSS layout. So, we can center the elements by using position property. Example 1: This example set the position of elements exactly at the center of the screen.

How do you align a div in the center of a page?

To center a div horizontally on a page, simply set the width of the element and the margin property to auto. That way, the div will take up whatever width is specified in the CSS and the browser will ensure the remaining space is split equally between the two margins.

How do I center my header in CSS?

If you need to use CSS to center text within an element like a div, header or paragraph you can use the CSS text-align property. Setting the text-align property to center is the most common way to horizontally align text using CSS.

How do I center two buttons in CSS?

Sometimes you might want to have two buttons next to each other, but to center both together on the page. You can achieve this by wrapping both buttons in a parent <div> and using flexbox to center them on the page. Notice that we also added margin-right: 20px to the first button, in order to add space between them.

How do you center a button horizontally in CSS?

We can align the buttons horizontally as well as vertically. We can center the button by using the following methods: text-align: center - By setting the value of text-align property of parent div tag to the center. margin: auto - By setting the value of margin property to auto.

How do I center text vertically in a button?

Just use display: table-cell; and vertical-align: middle; . Thats it. Use line-height to center it vertically. I usually use the same value as its height.

How do I right align a button?

Example of aligning a button to the right with the CSS text-align property:¶ If you want to move the button to the right, you can also place the button within a <div> element and add the text-align property with its "right" value to the "align-right" class of the <div>.