<div class="example"></div>
.example {
width: 300px;
height: 50px;
background: yellow;
cursor: pointer;
position: relative;
margin: 50px auto;
}
.example:before {
content: '';
display: block;
width: 0;
height: 5px;
background: red;
position: absolute;
left: 0;
bottom: 0;
transition: .5s;
}
.example:hover:before {
width: 100%;
}
<div class="block">
<a href="#" class="more">
read more
</a>
</div>
.block{
width: 200px;
height: 200px;
background: #bebebe;
position: relative;
}
.more{
position: absolute;
right: 10px;
bottom: 10px;
}
button::-moz-focus-inner {
border: 0;
padding: 0;
}
А в целом для сброса стилей нужно использовать normalize.css , а не ту белиберду, что вы написали.