Ashkenazi yarmulkes from around 200 years ago closely resemble the Yerushalmi style - white knitted with a tassel on top. Today, the vast majority of Chasidim and Yeshivish Jews seem to wear black velvet yarmulkes, with some notable exceptions. When and why did this change take place?
I heard Rabbi Berel Wein discussing that Rashi's headcovering (in the animated film made by Rabbi Wein) is red, maroon, and/or brown. The historical research shows those were men's colors for Jews in Rashi's time and place. Someone objected that it should be a black velvet yarmulka. Rabbi Wein replied that black happened in the 1400s as a result of a Church decree that colors were too happy for Jews, they should only wear black. Much later, some rabbis came along and said "I see the Jews wear black; that's nice, it's a sign of humility."
That doesn't completely answer the question, but it's probably a piece.
(Of course, Rabbi Wein's questioner replied, "oh um ... but you still should have made it a black velvet yarmulka!" Rabbi Wein: "What's next? Rashi with a shtreimel? When is it wrong to tell the historical truth?")
One odd thought might be related to size? As you knit a kippah it takes more effort as the outer rim gets larger and larger. I asked my sister once to knit me one, but I have a big head and like a big kippah. She did it once and refused after that saying it was so much work to do big ones.
Cloth kippahs have no major additional cost in effort (material is cheap) to make larger sizes.
I doubt this is a real answer, but something to consider.
From this Google Books search you can see a few references in the mid- and late-19th century to Jews in Europe (including Polish Jews and a Jew from Italy) wearing black velvet kippas.
I assume that they became popular because velvet appears formal and dressy, and would have looked good with formal black coats. But I have no real information on why the change took place.