There are two different fees that are often confused - foreign currency fees and foreign transaction fees. The first applies to transactions in a non-USD currency, the other to transactions anywhere outside the US, even if they use the USD. I've even heard of some card issuers charging a foreign transaction fee for transactions in Puerto Rico.
It's always best to double-check before traveling. Chase Sapphire doesn't charge the fees.