想要更改当前页面的选项卡图像

时间:2011-09-06 10:17:59

标签: html css django image tabs

我有一个django网络应用程序,其横向导航,标签水平移动。每个链接都会查找名为tab.png的图像选项卡。我还包括了一个悬停属性。

现在,我想更改所选标签菜单(当前页面)的标签图像。因此,无论当前页面是什么,请将选项卡图像更改为tab2.png。唯一的问题是我不确定如何正确地做到这一点。

base_menu.html

{% extends "base.html" %}

{% block content %}

<ol id="toc">
        <li><a href="{% url mmc.views.return_clients %}"><span>Home</span></a></li>
        <li><a href="{% url mmc.views.quote_step1 %}"><span>Create quote/order</span></a></li>
        <li><a href="{% url mmc.views.search_item %}"><span> Item Search</a></span></li>
        <li><a href="{% url mmc.views.order_list %}"><span>Storage orders</span></a></li>
</ol>

<div id="right_content">
        {% block right_content %}

        {% endblock %}
</div>
{% endblock %}

base.css

ol#toc {
    height: 2em;
    list-style: none;
    margin: 0;
    padding: 0;
}

ol#toc li {
    background:#ffffff url(../images/tab.png);
    float: left;
    margin: 0 1px 0 0;

}

ol#toc span {
    background: url(../images/tab.png) 100% 0;
    display: block;
    line-height: 2em;
    padding-right: 10px;
}

ol#toc a {
    color: #000000;
    height: 2em;
    float: left;
    text-decoration: none;
    padding-left: 10px;
}

ol#toc a:hover {
    background: url(../images/tab2.png);
    text-decoration: underline;`

}

ol#toc a:hover span {
    background: url(../images/tab2.png) 100% 0;
    background-position: 100% -120px;
}

3 个答案:

答案 0 :(得分:0)

在这种布局中,似乎不可能只使用css,因为你的'li'或'a'没有像id =“current”那样的东西。

顺便说一句,使用这种风格,你可以在'span'上面加一个标签'a',在'li'顶部有一个带有标签的标签。有点矫枉过正的说法?

这是您添加当前li时所需的唯一css ...不需要所有其他背景。

ol#toc li {
    background:#ffffff url(../images/tab.png);
    float: left;
    margin: 0 1px 0 0;

}
ol#toc li#current {
    background:#ffffff url(../images/tab2.png);
    float: left;
    margin: 0 1px 0 0;

}

答案 1 :(得分:0)

@ Shehzad009;以a标记&amp;对于current page,您可以根据页面为.current $ \&amp; chane创建一个类。

ol#toc a{background: url(http://dummyimage.com/200x32/000/fff&text=normal) 0 0;}
ol#toc a:hover, .current {background: url(http://dummyimage.com/200x32/000/454545&text=hover) 0 0;}

<强> HTML

<ol id="toc">
        <li class="current"><a href="{% url mmc.views.return_clients %}"><span>Home</span></a></li>
        <li><a href="{% url mmc.views.quote_step1 %}"><span>Create quote/order</span></a></li>
        <li><a href="{% url mmc.views.search_item %}"><span> Item Search</a></span></li>
        <li><a href="{% url mmc.views.order_list %}"><span>Storage orders</span></a></li>
</ol>

答案 2 :(得分:0)

这是一个将“当前”类设置为的javascript行。

<script type="text/javascript">
  $(document).ready( function () {
    $("#toc >li >a").each(function (key,object) { if($(object).attr("href") == document.location.pathname) $(object).addClass("current");});
  });
</script>