Because these are selecting two different sets of objects.
a.tandc:visited selects a link with a class of tandc (which is what you had in your html)
.tandc a:visited looks for an visited a element inside another container which has a class of tandc
css
a.tandc:visited { color: red; }
.tandc a:visited { color: blue; }
html
<a href="http://www.example.com" class="tandc">This should be red once it's been clicked</a>
<div class="tandc">
<a href="http:///www.example2.com">This should be blue once it's been clicked</a>
</div>