32

How can I "unvisit" a specific link in Chrome?

I don't want to clear the entire browser history; I just want to undo the "visited" status on links, i.e. make the :visited style (the thing that makes visited links purple) not show for that URL.

I've found ways to "unvisit" all links, but I only want to do this for specific links, and the ways that I have found all require clearing browser data. (in fact, the only way I have found so far is to just clear all browsing history.)

Here is an image for clarity:

enter image description here

I want to remove the purple "visited" status.

36

Open the history by pressing Ctrl + H, search for the URL that you want to remove, click on the time that is displayed left of it and then click Remove selected items.

Note: Since Chrome history doesn't hold too many entries you may not find that link in there if you visited that page long time ago, yet it still will show up as "visited" in your browser.
To "unvisit" it, simply go back to that page and click that link again — that way, it will now be in your Chrome's recent history and you can delete it as described above.

8
  • 1
    Ah, thanks! Can I do this without going to the history, though? Perhaps a userscript? (+1, and I will accept this in 5 minutes once I can)
    – Doorknob
    Aug 21 '13 at 15:49
  • Apparently you can (I haven't tried it, though): developer.chrome.com/extensions/history.html
    – n.st
    Aug 21 '13 at 15:50
  • 1
    The OSX hotkey is command+y. command+h will hide the application Oct 15 '14 at 22:40
  • 4
    Here's another tip - since Chrome history doesn't hold too many entries you may not find that link in there if you visited that page long time ago, yet it still will show up as "visited" in your browser, simply go back to that page, click that link AGAIN!!, this way it will now be in your Chrome's recent history - now you can delete it and it will now remove the "visited" purple status from that link ;)
    – techexpert
    Nov 11 '14 at 15:45
  • This works only temporarily for some reason with google search results links — i.e. until I reload the search results page.
    – Ruslan
    Dec 6 '15 at 11:15
3

I'm not sure my solution would work for your purpose, but it works much better for me than deleting my browsing history every time I turn around. I have a lot of homemade documents on my desktop that I created using simple html; mostly they are just lists of active links. On most of these documents I specified font and font size, but just went with the default for font colors, for simplicity's sake, and they show unvisited links in blue and visited links in purple.

My solution was to simply add this code to documents that I do not wish to show which links have been visited:

"text= "#0000FF" link="#0000FF" vlink="#0000FF"

The entire line of code reads:

<body bgcolor="#BFB6A1" text= "#0000FF" link="#0000FF" vlink="#0000FF">
<font face="Ariel" size="3" color="#0000FF" FAMILY="SANSSERIF">
<body>

and it of course requires at the end of the document as seen here:

</font>
</body>
</html>

This effectively makes all text on the page show as blue (you could substitute any color number) including visited and non-visited links. So, while Chrome continues to do its thing and notes which links on that page have been visited, neither I, nor anyone else, can see them.

1
  • 1
    Upvoting because this might help OP, in combination with addons like stylish. You can use this add-on to overwrite the CSS code of specific websites - So you can pre-define whatever websites you want and then use code like a:visited { color: blue; } to force all links to be in blue color, even when they were visited in the past.
    – confetti
    Sep 21 '18 at 18:48
2

Searching the web for an answer to exactly this question I found this browser addin.

http://chrispederick.com/work/web-developer/

It seems to have versions for Chrome, Firefox and Opera.

Look under Miscellaneous for the option Mark All Links Unvisited. Worked perfectly for me in Chrome.

1
  • This was exactly the answer I needed! I even have the Web Developer extension, but wasn't aware it could do that. As a developer, it is a pain to have to clear history/cache for everything because then I have to log back in to ALL my online accounts, services, and portals. And unfortunately, for this type of thing, instructions for "just delete history/cookies" for "one site" doesn't work. Maybe it is a quirt of locahost? Thanks! Jan 26 '18 at 16:56
2

Simplest method is deleting the page from history (and, if the URL is not in the history, adding it to history by visiting it and then deleting), as explained in the accepted answer. However, OP also asked about scripting the process without going to history, and this is indeed possible to do.

Chromium uses the Visited Links file in the profile path for the visited status of links. This file is in binary format, unlike the History and other files which are SQLite databases. However, as Chromium is open source, we don't need to reverse engineer it.

The file starts with the header VLnk and contains the 8-byte fingerprints for the URLs that have been visited. The fingerprint is the first 8 bytes of the MD5 hash of the salt + URL. Salt is located at the 0x10 offset in the file.

To unvisit a link in a Chromium browser you can calculate the fingerprint of the URL for your profile, find it in the Visited Links file, zero those 8 bytes and also decrement the counter at the beginning of the file (you can see it by comparing the files from before and after visiting a new link). This is what Chromium does when an item is manually deleted from history, and clearing all history zeroes the whole file. Chromium browsers may keep history (stored in the History file) for a limited time, e.g. Chrome apparently keeps them for 90 days. Presumably, after those 90 days, they are removed from History but not Visited Links, which explains the discrepancy between the two mentioned in the accepted answer.

Here is some Python code to better understand the content of Visited Links file from a Chromium forensic tool. You can first use the chromagnonVisitedLinks.py to check it works, and then modify the visitedLinks.py to not just find but delete URLs.

1

If your goal is just to see the links in an unvisited state, you can:

  • Press F12 to open Chrome Developer Tools.
  • Click on the magnifying glass on the upper left and select the visited link.
  • Unclick the CSS rule in the Style section
1
  • This is only a temporary change.. The changes will be lost once you make a page reload.
    – Pacerier
    Oct 12 '15 at 6:28

Not the answer you're looking for? Browse other questions tagged or ask your own question.