avast only blocks the infected element, if the detection isn't on the actual web page then it is entirely possible that the page will display, but the infected element will have been blocked.
The web shield filters all http port 80 traffic and scans it in its local proxy, if it is infected avast aborts that connection and discards that item, so it doesn't end up in your browser cache to be either run or viewed on your browser.
In the majority of cases the infection is actually inserted into the main page (an HTML javascript script or iframe tag) if that is the case then the page won't display as the page code in its entirety is discarded.
Me if avast alerted on a site yet the page still loaded, I know it is an item in that site called or imported into that page, so there is no way I would continue using that site and avoid other such alerts.