How do common histological stains work?

In histology there are commonly used acidic (= negatively charged) dyes, like eosin, erythrosine, orange G, and basic (= positively charged) dyes, like haematoxylin, toluidine and methylene blue, azure II. Acidic dyes stain positively charged structures, like some cytoplasmic proteins, and basic dyes stain negatively charged molecules, like RNA and DNA. Structures stained with acidic dyes usually appear pink, with basic - blue.


That's what commonly offered in histology course. I could not find any information on what type of bonding these dyes use (is there a covalent bonding or non-covalent interaction?). Nor do I know why cell structures stain that way. Can you explain these properties of the dyes?


