The reason for that is because if you run layer-3 at the access layer, that limits you from spanning vlans across different closets/floors. For example, say you have a builfing with 3 floors and you want to run the same vlan for all floors, that will only work if the access layer switch is layer-2 and the routing takes place on the distro or core. But if the access switch is layer-3, you can only run one vlan for each closet/floor, so you are forced to have 3 vlan/subent for 3 floors versus one vlan for all closets/floors.
HTH