Leighton is a town in Colbert County, Alabama, United States. It is part of the Florence - Muscle Shoals Metropolitan Statistical Area known as "The Shoals". At the 2010 census the population was 729. 