If you want to be paid for 10 hours, you will need to take 10 hours holiday - holiday pay is usually paid at flat rate unless your contract says otherwise. If you are happy to get 5hrs holiday pay, you can ask them if you can take just 5 hours.
What does your contract say in relation to your working hours?
I assume that you can be rostered to work every bank holiday if the company wishes to, however you will be entitled to time off in lieu or 20% of your normal weekly wage paid in addition to your normal wages for each week there is a bank holiday.