Javascript 在CSS中传递引用?

Javascript 在CSS中传递引用?,javascript,jquery,css,Javascript,Jquery,Css,我试图在下面的css片段中传递一个引用(正确的术语?),其中在progressbardiv下,我试图在随后的statusdiv中将%与美元金额挂钩,其中800/1000是80%。有办法做到这一点吗?谢谢 <div id="progressbar"> <div id="progress" style="width: 80%;"> </div> </div> <div id="status"> <span class=

我试图在下面的css片段中传递一个引用(正确的术语?),其中在progressbardiv下,我试图在随后的statusdiv中将%与美元金额挂钩,其中800/1000是80%。有办法做到这一点吗?谢谢

<div id="progressbar">
    <div id="progress" style="width: 80%;"> </div>
</div>
<div id="status">
    <span class="heading">MONEY RAISED</span>
    $ 800
    <span class="heading">MONEY ASKED</span>
    $ 1,000 
</div>

筹款
$ 800
要钱
$ 1,000 
有办法做到这一点吗

不,不是在纯CSS中。您必须指定包含所需像素宽度的类或
style
属性,或者使用JavaScript解析美元值,并相应地设置宽度

有办法做到这一点吗


不,不是在纯CSS中。您必须指定包含所需像素宽度的类或
style
属性,或者使用JavaScript解析美元值,并相应地设置宽度

您可以使用CSS表达式

CSS表达式是一个强大的(和 危险的)设置CSS属性的方法 动态地。表达式的问题是,它们的求值频率比大多数人预期的要高



我不会考虑在CSS中这样做,因为使用jquery/javascript非常简单

如果你能稍微改变一下你的DOM,那会有很大帮助。像这样:

<div id="progressbar">
    <div id="progress"> </div>
</div>
<div id="status">
    <span class="heading">MONEY RAISED</span>
    $ <span id="raised">800</span>
    <span class="heading">MONEY ASKED</span>
    $ <span id="asked">1000</span>
</div>
或javascript:

var raised = parseInt(document.getElementById('raised').innerHTML.replace(',','')),
    asked = parseInt(document.getElementById('asked').innerHTML.replace(',',''));
document.getElementById('progress').style.width = (raised / asked)*100 +"%";

您可以使用CSS表达式

CSS表达式是一个强大的(和 危险的)设置CSS属性的方法 动态地。表达式的问题是,它们的求值频率比大多数人预期的要高



我不会考虑在CSS中这样做,因为使用jquery/javascript非常简单

如果你能稍微改变一下你的DOM,那会有很大帮助。像这样:

<div id="progressbar">
    <div id="progress"> </div>
</div>
<div id="status">
    <span class="heading">MONEY RAISED</span>
    $ <span id="raised">800</span>
    <span class="heading">MONEY ASKED</span>
    $ <span id="asked">1000</span>
</div>
或javascript:

var raised = parseInt(document.getElementById('raised').innerHTML.replace(',','')),
    asked = parseInt(document.getElementById('asked').innerHTML.replace(',',''));
document.getElementById('progress').style.width = (raised / asked)*100 +"%";

Javascript就是这里的答案!!这不是CSS,你说的“把%和美元金额挂钩”是什么意思?RoToRa我想他的意思是,让800美元宽80像素,1000美元宽100像素(例如),这不是CSS;这是HTML。Javascript是这里的答案!!这不是CSS,你说的“把%和美元金额挂钩”是什么意思?RoToRa我想他的意思是,让800美元宽80像素,1000美元宽100像素(例如),这不是CSS;这是HTML.CSS表达式很有趣,但Internet Explorer 8及更高版本、IE8标准模式及更高版本不再支持
动态属性(也称为“CSS表达式”)+1对于其余部分,尤其是显示jQuery和非jQuery方式,CSS表达式很有趣,但Internet Explorer 8和更高版本、IE8标准模式和更高版本不再支持动态属性(也称为“CSS表达式”。
+1表示其余内容,特别是用于显示jQuery和非jQuery方式