I find shifting the burden to the merchant or card processor to be ultimately anti-consumer. It hides the true cost of financial crimes from consumers and ultimately manifests in increased costs, while to the merchants or banks it’s just a cost of business. In the end the consumer is shielded from fraud but ultimately pays for it.
The merchant/processor are better placed to take the burden though - it may increase the fees, but to me, an ongoing marginal increase is preferable to the risk of being cleaned out in the case of fraud.
It's also pro-consumer in that it lets you use your debit cards without much fear of fraud -- if I were liable for fraudulent charges, I would be _much_ more reluctant to use it anywhere (especially as the bank may not be as incentivised to provide as good a fraud protection), drastically reducing its utility.
The reason why I think it's anti-consumer is that by detaching the liability of fraud from the end consumer means detaching it from the whole system. No one really cares about the fraud if the consumer doesn't. The credit card company profits either way, but by removing any concern for fraud it makes more money.
I think a sensible solution is to split the liability between the merchant and consumer. Hiding it from the consumer hides it from the one party that would even care about prosecuting fraud.