如何更改投票结果栏的颜色?

我正在用两个结果栏进行民意调查。结果栏都是蓝色的,但是当我尝试更改栏颜色时,它不会改变。

我试图在堆栈溢出时查看其他答案,(如何使用 javascript 更改进度条的颜色? :) 但它们似乎不起作用。

<script>

                   function getVote(int) {

                   var xmlhttp=new XMLHttpRequest();

                   xmlhttp.onreadystatechange=function() {

                       if (this.readyState==4 && this.status==200) {

                       document.getElementById("poll").innerHTML=this.responseText;

                       }

                   }

                   xmlhttp.open("GET","poll/study_vote.php?vote="+int,true);

                   xmlhttp.send();

                   }

               </script>


               <div id="poll">

                       <h2>When studying, do you often find yourself procrastinating?</h2>

                       <form>

                       Yes: <input type="radio" name="vote" value="0" onclick="getVote(this.value)"><br>

                       No: <input type="radio" name="vote" value="1" onclick="getVote(this.value)">

                       </form>

               </div>


</script>


PHP:


<?php

$vote = $_REQUEST['vote'];


//get content of textfile

$filename = "poll_result.txt";

$content = file($filename);


//put content in array

$array = explode("||", $content[0]);

$yes = $array[0];

$no = $array[1];


if ($vote == 0) {

 $yes = $yes + 1;

}

if ($vote == 1) {

 $no = $no + 1;

}


//insert votes to txt file

$insertvote = $yes."||".$no;

$fp = fopen($filename,"w");

fputs($fp,$insertvote);

fclose($fp);


$yesProgress = 100*round($yes/($no+$yes),2);

$noProgress = 100*round($no/($no+$yes),2);


?>


<h2>Result:</h2>

<table>

   <tr>

       <td>Yes:</td>


       <td>

       <progress id="file1" max="100" value="<?= $yesProgress ?>">

           <?= $yesProgress ?>

       </progress>

       <?= $yesProgress ?>%

       </td>

   </tr>

    <tr>

       <td>No:</td>

       <td>

       <progress id="file2" max="100" value="<?= $noProgress ?>">

           <?= $noProgress ?>

       </progress>

       <?= $noProgress ?>%

       </td>

   </tr>

</table>

下面尝试将条形颜色从蓝色更改为粉红色的 CSS 代码不起作用。绿色和灰色条是我尝试更改为粉红色的条。结果如下图:

http://img.mukewang.com/645da3a5000173be03870138.jpg.



慕娘9325324
浏览 110回答 1
1回答

森栏

实际的进度条是由浏览器实现的(类似于按钮的方式,如果你以前遇到过 CSS 问题的话),用 CSS 直接修改比仅仅针对元素更难一些progress。您必须使用特定于供应商的伪元素,例如在 Chrome 中:#file1::-webkit-progress-value {     background: pink; }我相信 Firefox 所需的 CSS 是:#file1::-moz-progress-bar {     background-color: pink; }您可以应用的其他 CSS 属性(及其特定于供应商的伪元素)的更多信息,尤其是在靠近底部的“另请参阅”部分。
打开App,查看更多内容
随时随地看视频慕课网APP