When playing in singleplayer with lag, for example due to more chunks quickly loading, the game can't process the elytra opening, causing death when jumping off cliffs to start flying.
Also the elytra can only open, even in normal game, when the player is moving downwards. This causes problems if a player launches himself up with slimeblocks or tnt to glide for a long time, but presses space before he reached the peak while he is still moving up, causing the elytra to not open.
My fix suggestion would be to improve the elytra opening detection, especially when spamming space, and to allow elytra to open when the player is not on the ground, no matter if the velocity is up or down, making it a lot easier to start the elytra when launching up.
I thought it not opening while travelling up was intentional. It's the same behavior as critical strikes. When the Elytra was first introduced I was always telling people "if you keep having problems doing it remember it works like critical strikes: you have to wait until the downwards part of the jump arc to use it".
Then again maybe Mojang changed their intention.