We went to Loro Parc in Tenerife on a day trip from Gran Canaria a few years back, so that's a possibility.
I'll have a look at Lanzarote too.
In a perfect world we could fly there from our local airport instead of going from Glasgow or Edinburgh. Sometimes the drive to the airport is longer than the flight!
Lanzarote was quite warm in the daytime, but bit chilly at night, but it was in December. Slight wind throughout the day, not not enough to feel chilled.
We've been to Tenerife for the last 5 Xmases and hopefully a 6th this year (not booked yet). December is the worst month, but it's still nice and warm - usually low to mid 20 deg C.
Night time is quite comfortable in t shirt and jeans.
If you do decide to go to Tenerife, head to the south - Playa Las Americas; Los Cristianos; Costa Adeje .... etc ... as the north is usually cloudier than the south.