Taxi drivers in Spain have staged a 24-hour strike to protest against services such as Uber, which they say are braking the law.