Florida snapped a 3-game losing streak on Saturday afternoon in Gainesville as it upset No. 9 Texas, 29-21.