Reputation:
I want to align text to be with respect to image, the text is breaking and the rest of text is coming under image.
This is what i tried:
HTML:
<section>
<div class="left"><img src="https://s-media-cache-ak0.pinimg.com/236x/44/9f/02/449f02a1a0328ed5f311112b83407fdf.jpg" alt="" ></div>
<div class="right"><span>Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo </span></div>
</section>
CSS:
div.left{
vertical-align: middle;
display: inline-block;
}
div.right{
vertical-align: middle;
display: inline;
}
Upvotes: 0
Views: 229
Reputation: 1473
div.left{
float: left;
}
<section>
<div class="left"><img src="https://s-media-cache-ak0.pinimg.com/236x/44/9f/02/449f02a1a0328ed5f311112b83407fdf.jpg" alt="" ></div>
Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo
</section>
just use float left will solve the problem
div.left{
float: left;
}
Upvotes: 0
Reputation: 19341
Use display:flex
to section. And align-items: center;
if you want to make text center.
section {
align-items: center;
display: flex;
}
<section>
<div class="left"><img src="https://s-media-cache-ak0.pinimg.com/236x/44/9f/02/449f02a1a0328ed5f311112b83407fdf.jpg" alt="" ></div>
<div class="right"><span>Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo </span></div>
</section>
Upvotes: 0
Reputation: 726
In case you need to use div.
div.left {
vertical-align: middle;
display: table-cell;
padding-right: 10px;
}
div.right {
vertical-align: middle;
display: table-cell;
}
<section>
<div class="left">
<img src="https://s-media-cache-ak0.pinimg.com/236x/44/9f/02/449f02a1a0328ed5f311112b83407fdf.jpg" alt="">
</div>
<div class="right"><span>Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo </span>
</div>
</section>
Upvotes: 0
Reputation: 8276
One good way would be to arrange it in a table
. I think it's neater and easier to organize.
div.left {
vertical-align: middle;
display: inline-block;
}
div.right {
vertical-align: middle;
display: inline;
}
<section>
<table>
<tr>
<td>
<div class="left">
<img src="https://s-media-cache-ak0.pinimg.com/236x/44/9f/02/449f02a1a0328ed5f311112b83407fdf.jpg" alt="">
</div>
</td>
<td>
<div class="right"><span>Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo </span>
</div>
</td>
</tr>
</table>
</section>
See Fiddle
Upvotes: 0
Reputation: 1141
Please try to this code
div.left{
vertical-align: middle;
display: inline-block;
float:left;
}
div.right{
vertical-align: middle;
display: inline;
}
<section>
<div class="left"><img src="https://s-media-cache-ak0.pinimg.com/236x/44/9f/02/449f02a1a0328ed5f311112b83407fdf.jpg" alt="" ></div>
<div class="right"><span>Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo Demo Demo demo </span></div>
</section>
Upvotes: 1