In this paper, we design polar codes and polar lattices for independent identically distributed fading channels when the channel state information is only available to the receiver. For the binary input case, we propose a new design of polar codes through single-stage polarization to achieve the ergodic capacity. For the non-binary input case, polar codes are further extended to polar lattices to achieve the ergodic Poltyrev capacity, i.e., the capacity without power limit. When the power constraint is taken into consideration, we show that polar lattices with lattice Gaussian shaping achieve the ergodic capacity of fading channels. The coding and shaping are both explicit, and the overall complexity of encoding and decoding is O(N log2 N)