Mobile display problem --- force landscape

This is a question about the screen display.
I want to force the “landscape” mode on mobile devices.
I added this code to the css and it keeps the landscape display except for the canvas where the threejs renderer is located.

@media screen and  (orientation:  portrait){
   #body_container {
          transform-origin:top left;
          transform: rotate(90deg) translateY(-100%);
          width: 100vh !important;
          height: 100vw !important; 
  }
}

I also put 【 renderer.setSize( window.innerWidth, window.innerHeight ); 】 together
with 【 requestAnimationFrame(animation); 】
Can anyone help me with this problem? Thank you so much.