user2218845
user2218845

Reputation: 1121

How to vertically align items in horizontally ul list with images?

I have the following html code:

<div id="footer">
    <ul id="yw1">
        <li><a href="/index.php/site/login">About</a></li>
        <li><a href="/index.php/site/login">FAQ</a></li>
        <li><a href="http://twitter.com"><img src="/images/twitter_icon.png" /></a></li>
        <li><a href="http://twitter.com"><img src="/images/facebook_icon.png" /></a></li>
    </ul>       
</div>

And the following CSS styles:

#footer {
    margin-top: 25px;
    background: #000000 url(images/background.png) repeat;
    padding: 25px;
    box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
}
#footer ul {
    margin: 0;
    padding: 0px 0px 0px 0px;
    list-style: none;
    line-height: normal;
}
#footer li {
    padding-left: 20px;
    display: inline;
    list-style-type: none;
}
#footer a {
    color:white;
    letter-spacing: 1px;
    text-decoration: none;
    text-align: center;
    font-size: 14px;
    font-weight: 300;
}

Now result is:

screenshot

But I need to align images and text links by vertically. How can I do it?

Upvotes: 7

Views: 17970

Answers (4)

Mr. Alien
Mr. Alien

Reputation: 157304

As img tag is inline by default, it vertically aligns to the baseline and hence you need to use vertical-align: middle; for your img tag

Demo

CSS

#footer img {
    vertical-align: middle;
}

Upvotes: 11

dfsq
dfsq

Reputation: 193261

You just need vertical-align: middle on #footer li and #footer a + display: inline-block on images:

#footer li {
    /* ... */
    display: inline;
    vertical-align: middle;
}
#footer a {
    /* ... */
    vertical-align: middle;
    display: inline-block;
}

http://jsfiddle.net/dfsq/7kssu/

Upvotes: 0

Asim Nadeem
Asim Nadeem

Reputation: 151

User following CSS.

li { display:inline-block; vertical-align:middle }

Upvotes: 1

I am legend
I am legend

Reputation: 1

Just change your css

from

line-height:normal

to

line-height:30px

Upvotes: -1

Related Questions