Display Text Over Image Using HTML And CSS (May 2020)
Using absolute as position is not responsive + mobile friendly. I would suggest using a div with a background-image and then placing text in the div will place text over the image. Depending on your html, you might need to use height with vh value. In this step we create a div which work as a wrapper for image and text then we use simple markup to display text over lovesdatme.com remember one thing we use 'span' in 'p' element because we need to display background color only behind the text not on the whole paragraph this is the most important rule to display text over image with background color always use inline element for this lovesdatme.com
Join Stack Overflow to learn, share knowledge, and build your career. Connect and share knowledge within a single location that is structured and easy to search. I want the text and the image to be next to each how to find lake superior agates but I want the image to be on the far left of the screen and I want the text to be on the far right of the screen.
This is what I currently have Note that you will probably want to use the style clear:both on whatever elements comes after the code you provided so that it doesn't slide up directly beneath how to put text on image in html floated elements. You want to use css float for this, you can put it directly in your code. But I would really suggest learning the basics of css and splitting all your styling out to a separate style sheet, and use classes.
It will help you in the future. A good place to start is w3schools or, perhaps later down the path, Mozzila Dev. Network MDN. How are we doing? Please help us improve Stack Overflow. Take our short survey. Stack Overflow for Teams — Collaborate and share knowledge with a private group. Create a free Team What is Teams? Learn more. Ask Question. Asked 7 years, 10 months ago. Active 4 years, 2 months ago. Viewed k times. CSS: float: left; and float: right? Please remove it and replace it with the equivalent CSS ; — dsgriffin Jun 20 '13 at You can use css to place them in a div and use the appropriate float:right or left to have them on their respective sides.
Add a comment. Active Oldest Votes. Only problem is that a parent div will size and that's a problem if you're using a background color, etc — User Dec 14 '16 at User What does "a parent div will size" mean? Sven 2, 18 18 silver badges 25 25 bronze badges. Dominic Green Dominic Green 9, 4 4 gold badges 27 27 silver badges 34 34 bronze badges. You can use vertical-align and floating. In most cases you want to vertical-align: middle, the image.
So you might want to apply that to all elements within the element. Illuminati Illuminati 7 7 silver badges 21 21 bronze badges. I don't think vertical-align and float work together. The Overflow Blog. Podcast How to build and maintain online communities, from gaming to….
Level Up: Creative Coding with p5. Featured on How to put text on image in html. Stack Overflow for Teams is now free for up to 50 users, forever.
Follow TalkersCode On Social Media
May 19, · The better way to wrap text around an image is to use CSS. It’s gives you more fine grain control over the positioning of the elements and works better with modern coding standards. Even though I included CSS directly into the image tag in the HTML example, you really should never do that anymore either. The text is displaying at the bottom of the image. To enable your image and text to display properly together, you will need to add an ALIGN attribute to your image HTML code. Following is an example image displaying on the left with the text wrapping around the image to the right. Create HTML ¶ Put three elements and give them “container”, “image” and “text” class names. Put your image within the second element with the help of the tag and its src attribute. Add some text in the element.
I was asked by a visitor how he could place text beside an image and group them so that he could treat them as a unit, to centre "center" if you use a different variant of English or otherwise position them on a web page.
You don't have to be an expert, but you will need to know a little, otherwise you won't know how to apply what is taught to your situation. There are actually many ways to put text beside an image, in such a way that you can later treat both as a single unit.
The abbreviated HTML for the above is given below. It's abbreviated because I have removed the parts that are not relevant to the discussion, so that it's easier to read. After all, it's not as though you are going to be using the same words or even picture as my demo. To flush the picture to the left of the text, I added the following CSS rule. Since my image has an id of " demoimage ", this rule takes the picture out of the normal page flow, and aligns it to the left.
I do the same for the text, which in the demo above is an unordered list with an id of " demotext ". Since the image is specified first in the HTML order, the browser will have already, by this time, floated it to the left. As such, when it encounters this new " float: left; " for the text, it will find the space already taken. To solve this, it will place the list to the left of the element that was floated earlier, if there is enough space.
If there isn't, it will put it below that other element. It is also possible to use " float: right; " to cause the browser to move the list to the right of the picture. If the container into which you placed your picture and text is narrow, the result will probably look the same as using " float: left; ".
However, if the container is very wide, there will be a gap between the image and the text, since the former will be flushed to the left, and the latter to the right, with unused space between them. It's up to you which to use. I prefer to stack the container and text next to each other, but it really depends on what you are trying to achieve.
Note that I just happened to use an unordered list for my text. You don't have to do this. You can use a paragraph, an ordered ie, numbered list, a DIV block, or anything else that you want. In so doing, I can now manipulate those two items as a single unit if I want. To position both the picture and text in the middle of the page, it's just a matter of applying the standard CSS method used to centre DIV blocks. I first set the width of the container to include enough space for both the picture and the text.
Then I set the left and right margins to auto. When both margins are set to auto, the web browser is obliged to give them the same amount of space. This effectively puts the DIV block in the centre of the space in which it is sitting. As mentioned in my main article on centring DIV elements , you must set a width for this to work. Think about it. This prevents democontainer from exceeding the width of the browser window on say a mobile phone. You will want to do this in addition to the usual stuff you do to make your site mobile-friendly such as making your images responsive.
Note that if the combined width of your picture and text is wider than the width of the browser, one of them will be positioned underneath the other.
You can see the effect of this on my example above if you view this article on a mobile phone. Alternatively, if you are using a desktop or laptop computer, you can simply resize your browser window to see the same result. Once you hit a certain size, the browser will decide that it cannot fit both the picture and text side by side, and move the words under the picture.
In most cases, including my demo, this is what you want, since it allows both your picture and text to be read comfortably, and in logical order. All rights reserved. Do you find this article useful? You can learn of new articles and scripts that are published on thesitewizard. This article is copyrighted. Please do not reproduce or distribute this article in whole or part, in any form.