Passengers took pictures of the calamitous scenes on board before the plane landed in Calgary, Alberta
Eight had non-life-threatening injuries and 13 were sent for observation, the airline said in a statement.
Air Canada flight 88 departed from Shanghai and was headed to Toronto, Ontario, carrying 332 passengers and 19 crew.
Toronto is 2,200 miles away from Calgary.
The airline said it would be making arrangements to accommodate the other passengers, including those continuing on to Toronto, and that the incident was being investigated.
There was no immediate indication of what caused the turbulence.
Day|Week