At least one person was arrested and five others were injured, three of them journalists.
Protesters had tried to block a road leading to the stadium where the opening ceremony will take place.
Further protests are planned in other Brazilian cities over the expense of hosting the tournament.
In another development, striking airport workers in Rio de Janeiro blocked a road outside the airport, demanding a wage increase and a World Cup bonus.
The strike was to have lasted for 24 hours but union leaders called it off early for legal reasons.
Striking teachers also staged a rally in Rio city centre, further disrupting traffic.
Police charged with batons and riot shields, firing rubber bullets over heads of scores of protesters near a metro station on the route to the Arena Corinthians. Riot police moved in after the demonstrators refused to clear the road.
The demonstrators had been chanting “there won’t be a Cup”.
The violence happened about 8 miles from the stadium where Brazil will play Croatia at 20:00 GMT.
yxLvnycFWzgImage source: Wikimedia Commons President-elect Donald Trump celebrated his election victory at the Ultimate Fighting…
Millions of voters across the US chose to return Donald Trump to the White House…
Donald Trump declares victory in the US election as he addresses jubilant supporters in Florida.…
Stocks around the world are rising as Donald Trump appears to be on the cusp…
Donald Trump has won Pennsylvania, North Carolina and Georgia and taken a lead over Kamala…
Quincy Jones, the celebrated musician and producer who worked with Michael Jackson, Frank Sinatra, Ray…