I think it's probably a bit of both when it comes to markets. The food traders have to compete with the supermarkets and the non-food traders with the like of amazon,
ebay, screwfix and the like. Then throw in the vagaries of the weather as well... It's a shame, because it could be SO much more.
Cambridge has a pretty decent market, but unless I'm there for other stuff, it's not worth the trip.
London's street markets have changed a lot as well over the years (I'm North-East London born & bred) but some are still pretty decent, like Walthamstow (a good general market), Ridley Road in Dalston (fabulous for fruit & veg) and Chapel Street in Islington (a small-ish all-rounder but with a lot of award-winning street food carts). Sadly, Hoxton market in Shoreditch is a shadow of its former once vibrant self.
What's disappeared from all of them are the food stalls that sell end-of-line, short-dated or damaged goods, stuff that's fallen off the back of a lorry. It's a shame, because they were always really good value. I guess the discount supermarkets and the pound shops have eaten into their margins, even if they're not really treading on each other's toes...