For what it is worth, the company I work for charges expenses at cost, but they set up a clause on meals that effectively acts as a per diem (in other words I bill for the cost of the hotel and taxi, but I just bill a flat daily rate for my three meals).
As for travel, my company does things similar to what others have been saying. We bill for time that we work for the client. So if I work from the home office, on a plane, train, or bus, or at the client I bill the client. When I'm on a flight and I'm not working (sleeping, watching a movie, etc.) I still log the time for my company, but that time doesn't go to the client. Something to keep in mind is that just because you are working an hour for your company, doesn't mean your company will include that hour in the invoice to the client. We recently did a project where we had some outside consultants/subject matter experts and we only billed about 75% of their time to the client. Sometimes we would ask them to do things that weren't completely applicable to the project, or we would use their time to provide information which should have been known by our team (and thus we shouldn't bill for it). Similarly, the company you are contracting for may not have a cap on hours but their contract does, so you could work 10 hours a day, but your company only bills the client for 9 hours. I would assume you would still be paid your rate for 10 hours, even though they aren't being paid for all 10 (and remember, they are probably making a 50-100% markup on your time).
Really, you just need to work it out with the company you are contracting for. They'll probably have a standard that they use.