Play was halted for around five minutes when four protesters wearing orange boiler suits and helmets descended slowly on ropes early in the clash at St Jakob Park in Basel.
The Greenpeace activists were taking a stand against the German club's sponsor Gazprom, with the banner reading: "Gazprom, don't foul the Arctic" and "Free the Arctic 30".
The protesters then hauled themselves back onto the roof, while officials watched from the touchline and the match continued.
Basel could be in strife with UEFA for inadequate organisation and security measures after the protesters managed to get on the roof with their bulky equipment.
There had already been ugly scenes before the match with Basel fans, in black hoods, and Schalke supporters being kept apart as police in riot gear moved in.
Schalke went on to win the match 1-0, with Julian Draxler scoring the Germans' winner early in the second half.
The result means the German side go three points clear at the top of the group, with Chelsea third after their easy 4-0 triumph against Steaua Bucharest in Romania.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.