Wireless networks are characterized by bursty and location-dependent errors. Although many fair scheduling methods have been proposed to address these issues, most of them assume a simple two-state channel model, where a channel can be either good or bad. However, the situation is not so pessimistic since different modulation techniques can be adapted to different channel conditions. Multi-rate transmission is a common technique for wireless networks nowadays. This leads to a dilemma: should fairness be built based on the amount of medium time that a user utilizes or the amount of services that a user receives? In this work, we propose a Multi-rate wireless Fair Queueing (MR-FQ) algorithm that allows a flow to transmit at different rates according to its channel condition and lagging degree. MR-FQ takes both time and service fairness into account It not only guarantees fairness and bounded delays for packet flows, but also increases the overall system throughput.