Why do my h1 tags have different font sizes in the browsers when they both possess the identical rules?

HTML Code:
<div class="one">
       <h1>Hello</h1>
   </div>

   <h1 class="two">Hello</h1>

Code:
body {
  background:#fff;
  font-family:Trebuchet MS, Arial, Tahoma, sans-serif;
  font-size:14px; 
  letter-spacing:1px; 
  color:#000;
}
.one {
  font-size: 40px;
}
.two {
  font-size: 40px;
}