I made a sheet for our pack-n-play mattress using 1 yard of cheap-o flannel from Walmart and a bit of elastic. It was easy to make, and would have been easier still if I had noticed I was cutting 6" squares off the corners instead of 4"... Also, the fabric I bought was not 45" wide, but it is plenty big. Problem solved for $3.
Crib sheet instructions
Adapted for portable cribs