Altcademy - a Forbes magazine logo Best Coding Bootcamp 2023

How to position an image in HTML

Understanding the Basics

Think of HTML as a digital canvas. You're the artist and images are your paints. Positioning an image is like deciding where to place that stroke of paint on your canvas. In HTML, images are placed using the <img> tag, and the source of the image file is specified with the src attribute.

Here's an example:

<img src="url_of_your_image_file">

Easy, right? But, how do you decide where on the webpage this image will show up? Let's dive a bit deeper.

The CSS Connection

HTML is responsible for the structure of your webpage, but when it comes to style and design, that's where CSS (Cascading Style Sheets) steps in. CSS controls the layout of multiple webpages all at once by defining a "rule" that applies to any page that includes the CSS file.

Here's a simple analogy. Think of HTML as the bones of your webpage. CSS, then, is the skin, giving color, shape, and style to your structure.

To position an image, you need to use CSS properties like position, top, right, bottom, and left.

Positioning with CSS

Before we can move our image around, we need to understand what the CSS position property does. This property specifies the type of positioning method used for an element. There are five different position values:

  • Static
  • Relative
  • Fixed
  • Absolute
  • Sticky

We'll focus on the first four, as they're crucial for understanding how to position an image.

Static Positioning

By default, elements are positioned static, which means the element is not positioned in any special way. It's just positioned according to the normal flow of the page.

Relative Positioning

This is where the fun begins. An element with position: relative is positioned relative to its normal position.

So, if you specify left: 20px, the image will move 20 pixels to the right from where it would normally be.

Let's look at an example:

<img src="url_of_your_image_file" style="position:relative; left:20px;">

Fixed Positioning

An element with position: fixed is positioned relative to the browser window. It will not move even if the page is scrolled. This is like pinning a post-it note on a window; no matter how much you move around (scroll), the post-it note stays where it is.

Here's how you do it:

<img src="url_of_your_image_file" style="position:fixed; top:20px; right:30px;">

The image will always be 20px from the top and 30px from the right of your browser window.

Absolute Positioning

An element with position: absolute is positioned relative to the nearest positioned ancestor. This means that the image will move along with the part of the webpage it's tied to.

Here's how you set an image to be absolutely positioned:

<img src="url_of_your_image_file" style="position:absolute; top:20px; right:30px;">

This will position the image 20px from the top and 30px from the right of its parent element.


As you can see, positioning an image in HTML is not just about HTML, but also about understanding CSS and how the two work together. It's like learning how to place your paints on the canvas in just the right way to bring your masterpiece to life.

Remember, practice makes perfect. Keep experimenting with different values and positions, and you'll get the hang of it. Happy coding!