HTML dock to bottom

Shimmy Weitzhandler picture Shimmy Weitzhandler · Dec 25, 2012 · Viewed 18.9k times · Source

I have the following HTML:

<div class="gallery-item">
  <a href="ddd.pdf" style="display:block; width: 100%;">
    <span id="filename_1" style="white-space: nowrap;">Hello</span>
  </a>
  <div id="commands">
    <input type="text" readonly="readonly" value="https://blob">
    <a href="sdfasdfasdfasdf">Delete</a>
  </div>
</div>

CSS:

.gallery-item {
  border: 1px #AAA solid;
  display: inline-block;
  margin: 2px;
  padding 2px;
  width: 130px;
  height: 90px;
  text-align: center;
  border-radius: 5px;
  vertical-align: middle;
}    
  .gallery-item #commands {
    line-height: 4px;
    padding-bottom: 1px;
    vertical-align: bottom;
    bottom: 1px;
  }

I want to align commands div to the bottom of gallery-item classed div. None of the above worked, the commands sticks to the preceding element:

enter image description here

Answer

Praveen Kumar Purushothaman picture Praveen Kumar Purushothaman · Dec 25, 2012

Add position: relative to the parent.

.gallery-item {
    position: relative;
}

.gallery-item #commands {
    position: absolute;
    bottom: 1px;
}

When you are using positioning, you need to specify explicitly.