There are various CSS Visibility techniques that can be used to affect accessibility.
This css class can be used to make an element "visible" only to screen readers.
clip: rect(0 0 0 0);
Hidden with Opacity
Setting opacity to 0 will make an element invisible but will occupy space on the page, it can still be tabbed to with the keyboard and is acknowledged by a screen reader.
Hidden with Display
display:none hides an element from everyone in every context.
display will cause the layout to refresh.
Hidden with Visibility
visibility: hidden will make an element invisible and occupy space but will also hide the element from screen readers and keyboard access.
visibility will no affect layout.
Hidden with Aria
aria-hidden="true" to an element is not a CSS technique but affects an element by removing accessibility information. It affects screen readers but not the keyboard.
If a screen reader can focus on a tab stop that does not have accessibility information it can cause a ghost control. Chrome will still render a focusable element that is
If you really want hide something you also need to add
tabindex="-1" to remove it from the tab order.