设置CSS的背景图像:在编程之前以编程方式

时间:2016-05-03 11:16:32

标签: javascript jquery html css css3

我的网站上有一个菜单,使用:before 标记设置按钮按钮的图标。这适用于可以在CSS中设置的静态元素。某些按钮会从网站上的特定用户设置加载。有没有办法在CSS中使用类似的东西设置它们:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input id="regler" value="0" type="range">
<p id="output"></p>

显然那不起作用,并且supported well如上所述here

我可能错了,但就我而言:标签无法在javascript / jquery中被定位或更改。

我可以接受任何建议,javascript,css或php。

HTML:

.nav-team:before{ background-image:url(attr(src)); }

<li class="nav-team" src="assets/images/profile.png"><a href="#">Team Name</a></li>

CSS

<li class="nav-btn nav-team" src="assets/images/profile.png"><a href="#">Team Name</a></li>

1 个答案:

答案 0 :(得分:0)

首先,background-image属性不支持css中的attr()函数。

作为 Answer 中的Question,您可以为设置的背景图片编写javascript。

你可以通过Jquery

来做到这一点
    var count = 0;
    $('.nav-team').each(function(){
        var nav_team = $(this);
        var data_id='nav_team'+count
        nav_team.attr('data-id',data_id);
        var srcPath = nav_team.attr('src')
        $('head').append('<style></style>');
        $('head style:last').append('[data-id="' + data_id + '"]{  background-image: url("' + srcPath + '"); }');            count++;
    });