css "text-decoration: none" not working
<p>I don't understand why the <code>text-decoration: none</code> does not work in the following code. It fails to remove the underline of the word <code>yes</code>.</p>

<p><div class="snippet" data-lang="js" data-hide="false">
<div class="snippet-code">
<pre class="snippet-code-css lang-css prettyprint-override"><code>.button {
  color: black;
  text-decoration: none;
}
body {
  font-family: 'Roboto', 'Microsoft JhengHei', sans-serif;
  font-size: 24px;
}</code></pre>
<pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;a href="www.example.com"&gt;
  &lt;div class="button" id="yes"&gt;
    Yes
  &lt;/div&gt;
&lt;/a&gt;</code></pre>
</div>
</div>
</p>

<p>As you can see from the example below, the child can override the parent. This is contradictory to the problem above.</p>

<p><div class="snippet" data-lang="js" data-hide="false">
<div class="snippet-code">
<pre class="snippet-code-css lang-css prettyprint-override"><code>.b {
  color: black;
}
.c {
  color: yellow;
}</code></pre>
<pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;div class="b"&gt;
  &lt;div class="c"&gt;
    abc
  &lt;/div&gt;
&lt;/div&gt;</code></pre>
</div>
</div>
</p>