Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Position text over image

Tags:

html

css

I have this image:

enter image description here

But i want to place text in the middle like this:

This is how i wanted.

How can I achieve this?

I would like to do this in html, so I would use a <div> or a <span>

like image 337
Karem Avatar asked Feb 16 '10 19:02

Karem


People also ask

How can you position images with text?

In your document, select the object with which you want to work, switch to the “Layout” menu, and then click the “Position” button. That button also appears on the “Format” menu of the Ribbon and works the same way. The Position drop-down menu is divided into two sections: “In Line With Text” and “With Text Wrapping.”

How do I put text over a picture in HTML?

To insert an image in HTML, use the image tag and include a source and alt attribute. Like any other HTML element, you'll add images to the body section of your HTML file.


1 Answers

Using Pseudo Elements

The above could be created using the ::before and ::after pseudoelements of the containing element. For instnace, suppose we started with this:

<h1>Keep Calm and Stack Overflow</h1>

We could target the two pseudo elements, set their dimensions and background images, and get the same effect you are seeking above.

h1::before, h1::after {
    content: ""; display: block; height: 3em;
    background: url('ribbon.png') center center;
}

The above is a mere example of what you may write. For a fuller demo, please see this fiddle.

enter image description here

Using a Background Image (Original 2010 Answer)

Create a div that is the dimensions of your image. Then place your text inside. Use margins/padding on your text to get it vertically-centered, and set text-align to "center" for its CSS.

.imgBox  { 
    width: 300px; height: 100px; 
    background-image: url('bg.jpg');
}
.imgText { 
    text-align: center; 
    margin: 0; padding: 25px 0 0 0;
}
<div class="imgBox">
  <p class="imgText">Hello World</p>
</div>
like image 123
Sampson Avatar answered Oct 15 '22 12:10

Sampson