What exact law would that be?
If you seriously think that there's a law requiring ANY American -- athlete or not -- to salute the flag, say the pledge of allegiance, bow our head, sing the national anthem or anything in any way related to any of those, then someone needs to familiarize you with the 1st Amendment to the Constitution and a high school government class.
No one has mentioned any laws. Morals and standard can't be governed with laws alone. Nothing wrong with striving to be good, decent, respectful individual.
ahh but there is a Law
Title 36 section 301 of US Code -National anthem (aka the law) ..
(a) Designation -
The composition consisting of the words and music known as the Star-Spangled Banner is the national anthem.
(b) Conduct During Playing.—During a rendition of the national anthem—
``(A) individuals in uniform should give the
military salute at the first note of the anthem and
maintain that position until the last note;
``(B) members of the Armed Forces and veterans who
are present but not in uniform may render the military
salute in the manner provided for individuals in
uniform; and
``(C) all other persons present should face the flag
and stand at attention with their right hand over the
heart, and men not in uniform, if applicable, should
remove their headdress with their right hand and hold it
at the left shoulder, the hand being over the heart;
Note: Part (C) applies to those not in the military and non-veterans. The phrase "men not in uniform" refers to civil service uniforms like police, fire fighters, and letter carriers - non-veteran civil servants who might normally render a salute while in uniform.
I will also note that there is currently no criminal or civil penalty for not following this statute