Float Left and RIght on inside Li Tag with seperate anchor each

依然范特西╮ 提交于 2019-12-10 16:13:40

问题


I have a container, where I want to display some items on left and want to put a Cart icon on right side. I tried this, but not working, whats wrong here?

Both Text and Image have separate links.

Fiddle

HTML

<div class="showcase">
    <ul>
        <li class="item">
            <h1><a href="#">Item 1 + Star 1
                    <small>
                        <del>Rs. 6000</del>
                        <span> Rs. 3000</span>
                    </small>
                </a>
            </h1>
            <span class="pic"><a href="#"><img src="https://cdn0.iconfinder.com/data/icons/iicon/512/buy-Cart-48.png" alt=""></a></span>
        </li>
        <li class="item">
            <h1><a href="#">Item 2 + Star One
                    <small>
                        <del>Rs. 6000</del>
                        <span> Rs. 3000</span>
                    </small>
                </a>
            </h1>
            <span class="pic"><a href="#"><img src="https://cdn0.iconfinder.com/data/icons/iicon/512/buy-Cart-48.png" alt=""></a></span>
        </li>
    </ul>
</div>

CSS

.showcase ul {list-style-type: none;padding: 0;margin: 0 5px;}
.showcase li.item {border-bottom:1px solid #000;}
.showcase li.item a {display: block;color:#000;clear:both;}
.showcase li.item span.pic img {float: right;width:50px;height:50px;float:right;}

.showcase li.item h1 {text-transform: uppercase;font-family: 'fauna_oneregular' serif;white-space: normal;font-size: 0.8em;}
.showcase li.item h1 a {color:#000 !important;text-decoration: none}
.showcase li.item h1 small {color:#a51c10;display: block;}
.showcase li.item h1 small span {color:#79a510;}

回答1:


FIDDLE

First off you need to add a clear after your floated elements to resume the document flow:

<div style='clear:both;'></div>

Then you need to move float:right; from .showcase li.item span.pic img into:

span.pic{
    float:right;
}

Note that this is the basic premise, you should either aim to use a clearfix or remove the inline clear style for your finished code.

See this FIDDLE with clearfix implemented.




回答2:


1)The <h1> and <a> tag are block level elements , hence they occupy the full width, so, give inline-block

CSS:

.showcase li.item a {display:inline-block;color:#000;clear:both;}
.showcase li.item h1 {display:inline-block;}

2) You have given float:right for the img tag inside the span, so it floats right inside the span and not for your li, so you need to give float right for the span tag

CSS:

.showcase li.item span.pic{float:right;}



回答3:


Your href link has display:block

Change display:inline-block to pic, h1 and href link

check http://jsfiddle.net/raunakkathuria/MTHuP/3/




回答4:


I have updated your html and css you need to move the span tab above the a tag. check the fiddle here

<li class="item">
<h1><span class="pic"><a href="#"><img src="https://cdn0.iconfinder.com/data/icons/iicon/512/buy-Cart-48.png" alt=""></a></span>
  <a href="#">Aaryogyam 1.7A One + One
    <small>
    <del>Rs. 6000</del>
    <span> Rs. 3000</span>
    </small></a>
 </h1>

http://jsfiddle.net/MTHuP/4/



来源:https://stackoverflow.com/questions/20677952/float-left-and-right-on-inside-li-tag-with-seperate-anchor-each

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!