In an essay written in 2011 by Racheline Maltese, on the subject of female heroism, it points out that from the very moment Snape is introduced in the books, every description of him is feminine.
One point that stands out is that his preferred weapon of choice is poison, and that rather than being a fighter he is a spy. Both of these are characteristics that women hold in books, movies, literature and history.
Not only does Harry note the handwriting in the Half-Blood Prince's book looks like that of a girl, but in the memory presented of Snape's first meeting with Lily Potter he is described as wearing something that looks like an old women's blouse. This is not only the second reference the series gives us to Snape in women's clothes (the other being Lupin's encouragements to Neville to picture Snape in his grandmother's wardrobe to defuse the Boggart that has taken on the potions master’s appearance), but it references a common piece of generally British slang. To call someone a "girl's blouse" is, according to Urban Dictionary, to call them "a male displaying perceived feminine characteristics through actions which cause his peers to think less of him."
"I can't fathom Snape not being trans. The contextual clues all point to it. Snape is a character who inhabits a fluid, ambiguous position for most of the narrative - always between two worlds, and often quite literally lurking in the shadows of a room, outside looking in. Snape reads as someone in the closet, and tragically so."
Like we said, it's a very convincing theory.
J.K. Rowling may even come out on Twitter and either confirm or deny it, which she has definitely done in the past, so 'til then... we guess we'll be re reading the entire series again!