Fog at Gatwick Airport on Saturday
Fog at Gatwick Airport on Saturday, 17 December 2016. Gatwick Police

Heavy fog has caused travel "chaos" across the UK today. Thousands of flights and trains have been delayed or cancelled throughout Saturday (17 December) due to the poor visibility.

London City Airport, Gatwick, and Heathrow all reported delays. Many outbound flights had been cancelled or delayed, while many incoming planes had to circle for a long time before being given permission to land. Others were diverted to other airports across the UK.

One British Airways flight from Calgary was diverted to Glasgow airport this morning, after failing to land in London.

Similar issues were experienced at Manchester Airport and East Midlands Airport in Birmingham.

An image tweeted by Flight Radar shows the extent that some plans had to circle, before being given permission to land.

A Heathrow spokesman said around 50 flights had been cancelled so far and added that all 1,300 of the airport's scheduled flights were affected one way or another.

London City Airport tweeted: "Significant fog in London is continuing to cause flight delays and cancellations. Passengers affected are advised to speak to their airline."

Southeastern train services have also been affected by the weather as drivers are unable to see the tracks in front of them, due to the visibility.

A tweet from the rail service's Twitter account said: "If a driver can't see the signals/track clearly they will drive slower. You wouldn't speed in your car if you can't see."

Motorways across the UK also experienced a host of delays.

FOG @Gatwick_Airport..follow those green lights and spot the aircraft. ATC, Pilots and ground staff do an amazing job in these conditions.

— Gatwick Police (@GatwickPolice) December 17, 2016

Fog and low cloud impacting flights to Birmingham, East Midlands, and other nearby airports.

— Flightradar24 (@flightradar24) December 16, 2016

Absolute chaos at @HeathrowAirport nobody at @British_Airways has a clue what is going on

— Greig McDougall (@greigmcdougall) December 17, 2016