How do hardware wallets communicate with the outside world? Hardware wallet has more security than software wallet because they
  store private key in offline hardware, which online attackers cannot access. Thus, they sign
  in the hardware and then send the transaction with signature out to Bitcoin network.


At this points, I'm wondering some stuff:


If user make a payment, who broadcasts the transaction into the Bitcoin network? I know that hardware wallets has no Bitcoin node software that can communicate with peers. So who is responsible for this work?
bitcoin-cli is a program for querying a bitcoind node, but hardware wallets has no blockchain similar database thus, it can't query any information locally. How does hardware wallets check their transaction state?
A hardware wallet only has responsibility for handling private keys. This includes generating addresses (when receiving), and signing transactions (when sending). It needs some sort of communication with the outside world to do this. There's multiple hardware wallets on the market, and they don't all operate the same way. However, the principles are the same. 

1) How is the transaction broadcast? After the transaction is signed, the hardware wallet can export this in raw format. Anyone connected to the Bitcoin P2P network can then broadcast this raw transaction. One way of doing this is through bitcoin-cli sendrawtransaction. Another one is through a web wallet interface. This is typically provided by hardware wallet manufacturers. 

2) How does a hardware wallet query the blockchain? It doesn't. It has to have an external source of information about this. This could either be a full node like bitcoind, or a lightweight SPV wallet like Electrum. 

Common for both of these are that the hardware wallet needs to communicate with something externally. Trezor and Ledger does this by USB connected to your phone or computer (some Ledger models also have bluetooth), Coldcard uses micro SD cards.