I stabbed The Verge briefly in yesterday’s post for using
target="_blank" in their link markup, which tells browsers to always open the target in a new window. (Modern browsers usually have options or extensions to put them into new tabs instead.)
A lot of people have asked me to clarify whether forcing links to open new windows or tabs is actually bad behavior (and why), or just outdated markup that could be replaced with a new HTML5 way to do the same thing. I meant the former. People have been arguing about this for over a decade, so I’ll keep my position brief.
Forcing links to open in new windows has two main purposes:
- To avoid disturbing an important session in progress for a temporary digression, such as FAQ/documentation links in the sidebar when you’re doing online banking.
- To “keep people on your site”, ensuring that even when visitors navigate away, your tab is never closed and the user is forced to interact with it again later. Maybe they’ll let the ads refresh a few more times or click another story!
I believe the former is justifiable, the latter isn’t, and reading a news or blog article does not qualify as an undisturbable session for most people. And I think over a decade of user confusion and frustration resulting from
target="_blank" backs that up.
Most people know how to open your article’s outbound links in new tabs or windows, especially readers of a tech site. Modern browsers make multiple-tab/window management very easy for almost everyone who wants them, and the people who don’t know how to manage them usually don’t want them.
The best practice for the modern web is to let people manage their own windows and tabs.