ustaw wysokość płótna automatycznie

Mam płótno

<canvas id="canvas" width="1700" height="679" style="background-color:#ffffff;width:100%;overflow:hidden;margin-top: -7px;"></canvas>

Działa dobrze na Chrome i Firefox. Jednak np. Może pracować tylko z szerokością: 100%, ale nie może zmieniać wysokości (wysokość na 679)

Staram się, aby wysokość była automatyczna i 100%, ale stawałem się coraz lepszy

Edytuj: wreszcie! Mam to. Prawdą jest, że zawartość płótna nie będzie dobra przy szerokości 100%. Jednak dla wysokości (powyżej IE9 działa) należy ustawić styl wysokości

$("#canvas").attr('style','background-color:#ffffff; width:100%;height:679px;overflow:hidden;margin-top: -7px;');

I użyj Jquery, aby zmienić rozmiar płótna

function resizeIE()
{
  canvas = document.getElementById("canvas");
  if($.browser.msie) //only IE
  {
    $("#canvas").attr('style','background-color:#ffffff; width:100%;height:679px;overflow:hidden;margin-top: -7px;');
//set the height style first

    if(window.innerWidth<960) //for other device (only for me)
    {
      var height_ie = (window.innerWidth*39.941176470588235294117647058824)/100;
      //to make the ratio of canvas find the pencentage
      //ex. canvas height: 1700px canvas width: 679px;
      //(679*100)/1700 = 39.941 <-- use this one
      //best solution
    }
    else
    {
      var height_ie = window.innerHeight-160; //just for the logo for my web
    }
    canvas.style.height = height_ie+"px";
 }
}

dla ponownego rozmiaru okna należy zastosować na dokumencie.ready

window.onresize = function(event) {
  resizeIE();
};

questionAnswers(2)

yourAnswerToTheQuestion