Appliance of Science: Why do giraffes have such long necks?

Giraffes are the tallest land mammals on Earth. Their necks make up nearly half their height; they can be almost 2.5m long in a fully grown adult male. With such long necks you would expect their bones to be very different to ours but they have the same number of vertebrae in their necks as we do. All land mammals, except sloths, have seven vertebrae in their necks; it is just that the giraffes’ are a lot bigger (a giraffe’s vertebra is 15 to 20 times larger than a human’s).
Exactly how giraffes ended up with such long necks is still unclear. There are a number of theories.