Every lane (outside of jungle and top) has a clear identitiy on what works in that speicifc lane.
You look at mid lane for example, you know that this is the lane where the mages and assassins are.
When someone in your team picks Trundle mid you already get sceptical, before even seeing how it turns out you already know "this champ is not meant for mid lane"
Same goes for support, you have damage supports / tank supports / enchanter supports.
There isn't anything else there. You can't get anywhere with a Darius or Urgot support it just doesn't work.
Of course you have your accosional outliners but 90% of them get removed almost instantly from the lanes
Pretty much any non-marksmen in the ADC role outside of Yasuo
When you go to OP.GG and check Mid / Bot / Support you see champs that you actually expect to be in these lanes.
You can go down to like Tier 5 "almost troll picks" and there are still champs that you expect to be in these lanes.
So what do you expect from a top lane champ?
You are thinking about Bruiser (Juggernauts / Fighters / Divers / Skirmishers) and Tanks right? You aren't thinking about Vladimir or Akali right?
Now go to OP.GG and check the champs for top lane.
There are 3 different classes in the first 10 champions and the tank-class isn't one of them.
For the first 20 champions you got 4 classes presented and the tanks are still not one of them.
When you count every champ OP.GG lists for top lane you have EVERY class in the game presented in the top lane.
Not a single class is missing.
Now this was not always the case, you couldn't just go Klepto Zilean top and get away with it.
You also weren't able to play Vayne top.
Top lane, like any other lane, used to have requirements your champion had to fulfill to be playable top.
Now are original top champs unplayable right now? Not really, some got fucked over by the ranged spam like Trundle but you still have most top champs that are playable in the lane.
The problem is that players didn't start playing top because of Vayne or Akali or Vladimir.
They started playing top because they liked the Bruiser / Tank lane.
Remember how we tried to "open up" bot lane, how literally every bot laner ever complained for months that they can't play the lane even though their original champs were still perfectly viable?
It was never about viability, it just felt like total ass to play. Bot laners didn't start playing bot lane because of mages.
The same thing is happening with top. Now this is happening over a long time period, not like with bot lane where mages kicked the door open and told everyone there that the party is over through the course of 1 patch.
But it is STILL happening with top lane and it feels like total ass to play.
If we want to fix top we need to enforce it's identity. Top lane should not be the dumping grounds for champions that failed to work in their intented lanes (looking at you Akali and Viktor) it also shouldn't be a lane where ranged cheese works out as well as now (looking at you Vladimir and Vayne).
How do you fix this though?
One way to go about it is to decrease the efficiency of non-interactive poke.
Dorans Shield used to have a passive that blocks 8 dmg from single target spells or auto attacks.
That alone would help a lot against stuff like Vladimir or Vayne.
The next big thing is that if a melee top wants to fight a ranged one he needs to basically all-in. For an all-in the melee needs to have a relatively high HP pool to not die in the fight.
What I would do is to add a melee only bonus to Dorans Shield for this.
It would make it so the HP you get is a flat amount and not scaled off missing health. This way it helps to steay healthy and look for those all-ins.
In short I would rework Dorans Shield into this:
> Dorans Shield (450 gold)
> +80 Health
> UNIQUE PASSIVE: +6 HP / 5
> UNIQUE PASSIVE: Blocks 8 damage from single target attacks and spells from champions.
> UNIQUE PASSIVE: Restores 0 − 30 (based on missing health) health over 10 seconds after taking damage from an enemy champion.
> Melee only: Regenerates 20 health over 10 seconds when hit by an enemy champion instead of 0-30 (based on missing health)
These changes will help against most of the problematic champs in top.
Akali and the like would need champion specific changes.
Edit: I made this post before patch 9.7, right now tanks are represented in the first 20 champs whooo!.... I guess