css - HTML5 Meter Styling in Chrome -
i want style password strength meter implemented via . works fine in firefox, not in chrome.
here relevant css, taken github project css file:
meter { /* reset default appearance */ -webkit-appearance: none; -moz-appearance: none; appearance: none; margin: 0 auto 1em; width: 100%; height: .5em; /* applicable firefox */ background: none; background-color: rgba(0,0,0,0.1); } meter::-webkit-meter-bar { background: none; background-color: rgba(0,0,0,0.1); } meter[value="0"]::-webkit-meter-optimum-value, meter[value="1"]::-webkit-meter-optimum-value { background: red; } meter[value="2"]::-webkit-meter-optimum-value { background: yellow; } meter[value="3"]::-webkit-meter-optimum-value { background: orange; } meter[value="4"]::-webkit-meter-optimum-value { background: green; } meter[value="1"]::-moz-meter-bar, meter[value="1"]::-moz-meter-bar { background: red; } meter[value="2"]::-moz-meter-bar { background: yellow; } meter[value="3"]::-moz-meter-bar { background: orange; } meter[value="4"]::-moz-meter-bar { background: green; }
the last bit important, ability style based on meter's value.
it's intentional behavior change. https://www.chromestatus.com/feature/5668635896971264
so, need remove -webkit-appearance:none
, or need build meter value box yourself.
<style> meter { -webkit-appearance: none; background: gray; } meter > div { height: 100%; } meter[value="1"] > div { width: 25%; background: red; } meter[value="2"] > div { width: 50%; background: yellow; } meter[value="3"] > div { width: 75%; background: orange; } meter[value="4"] > div { width: 100%; background: green; } </style> <meter value=3><div></div></meter>
Comments
Post a Comment