fix rescue block; better detection of visible? for Elements and Components