Why don't Venus and Mercury transit the Sun every year?
The orbits are inclined to the Earth's orbit and their sizes are so small that
the timing has to be exactly right for them to pass through the ecliptic plane
exactly at the time when the ascending/descending node is between the Sun and
the Earth.