Garage door seals come in three forms, and are either permanently bonded or door-mounted. The permanently-bonded style is made of polyurethane. It fits over the existing base of any garage door track and includes the track’s 1/2-inch step-down weather barrier, so when the door closes, it butts firmly against the seal.
A second style of seal is a metal/fiber seal that attaches to the bottom of the garage door via screws. It is somewhat adjustable vertically, so you can set its height as it wears. This type of seal wears quickly, and reacts with sunlight, becoming brittle. It is often used in conjunction with the permanent seal, as it is somewhat effective in keeping out leaves and such.
A final seal is a hose-like seal that fits onto the bottom of the garage door itself. It is supposed to form a firm seal with the ground. It is permanently installed via an epoxy-based material, and often wears out due to reaction to sunlight and pollution.