https://kyrylo.org/html/2024/10/25/why-does-target-blank-have-an-underscore-in-front.html Why does target="_blank" have an underscore in front? Oct 25, 2024 | Kyrylo Silin Kyrylo Silin * @kyrylosilin * bluesky:@kyrylo.org Ever wondered why you need the underscore in target="_blank" to open a link in a new tab? Before HTML5, developers used for SPA-like functionality, dividing the window into multiple frames, each with its own unique name. For example, the left frame might be name="sidebar", and the right frame could be name="content". When clicking a link, the browser needed to know which frame to load the content into. That's where the target attribute came in. Clicking a link in the sidebar, for example, would load the content in the content frame: Now, if you had a frame named "blank" and used , the content would load in that frame. But if no such frame existed, the browser would create a new window (not a tab, as browsers didn't support tabs at the time) and assign it the "blank" name. Clicking the same link again wouldn't open another tab. So why the underscore in target="_blank"? It's simple - developers needed a way to explicitly tell the browser to open the link in a new tab, free of frame semantics. The underscore signifies a special value rather than a frame name. P.S. Don't use . It's deprecated in HTML5. - Writing software is like sp... * Home * There's no place for Test-D... - --------------------------------------------------------------------- Kyrylo Silin -- software engineer, web developer, and budding entrepreneur. There is ATOM feed (it's like RSS, but better). Last modified: