How much were you going to give them in cash? Books range in price greatly, and it sounds like a cash gift would be put into their normal every day money, while a gift card would HAVE to be spent on something fun for them.
If I were given a $20 and told go have fun, that $20 might be used for groceries. If I'm given a $20 specific gift card, I might spend $25-30 at the store, and not worry about the difference.