author Xidorn Quan <>
Tue, 14 Feb 2017 22:43:32 +1100
changeset 389521 ae26b4e4d59b93c33bf06701d5bf9d4a97a2b1f8
parent 118530 fd12a2c69e93b58cb79f6c3d0482d3df6943397d
child 389522 036b32fc9bc49cb1ac912ca450685cda787a7a35
permissions -rw-r--r--
Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam MozReview-Commit-ID: 59cmaCoFJMR

  <meta charset="utf-8">
  <title>Test for Bug 800983</title>
  <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
    #display::before { content: "Visible"; display: block }
    #display {
      display: inline;
      margin-top: 0;
      background: yellow;
      color: blue;
<a target="_blank" href="">Mozilla Bug 800983</a>
<p id="display"></p>
<div id="content" style="display: none">
<pre id="test">
<script type="application/javascript">

/** Test for Bug 800983 **/
var cs = getComputedStyle($("display"));
var cs_pseudo = getComputedStyle($("display"), "::before")

var cs_default = getDefaultComputedStyle($("display"));
var cs_default_pseudo = getDefaultComputedStyle($("display"), "::before");

// Sanity checks for normal computed style
is(cs.display, "inline", "We have inline display");
is(cs.marginTop, "0px", "We have 0 margin");
is(cs.backgroundColor, "rgb(255, 255, 0)", "We have yellow background");
is(cs.color, "rgb(0, 0, 255)", "We have blue text");
is(cs_pseudo.content, '"Visible"', "We have some content");
is(cs_pseudo.display, "block", "Our ::before is block");

// And now our actual tests
is(cs_default.display, "block", "We have block display by default");
is(cs_default.marginTop, "16px", "We have 16px margin by default");
is(cs_default.backgroundColor, "rgba(0, 0, 0, 0)",
   "We have transparent background by default");
is(cs_default.color, "rgb(0, 0, 0)", "We have black text by default");
is(cs_default_pseudo.content, "none", "We have no content by default");
is(cs_default_pseudo.display, "inline", "Our ::before is inline by default");