2017-08-14 4 views
0

固定テキストでページにモナコエディタを埋め込みたい場合は、モナコエディタの高さでページの残りの部分を正確に埋めることができます。人々は私に答えを与えました(JSBin):Safariでスクロールダウン中のちらつき

<html> 
    <style> 
    body { 
     margin: 0; 
     height: 100%; 
    } 

    .rb { 
     height: 100%; 
     display: flex; 
     flex-direction: column; 
    } 

    .myME { 
     flex:1; 
     background: grey; 
    } 

    #container > * { 
     max-height:100%; 
     overflow:auto; 
    } 
    </style> 
    <body> 
     <div class="rb"> 
      <div class="top">1<br/>2<br/>3<br/>4<br/></div> 
      <div class="myME" id="container"></div>  
     </div> 
    <script src="https://www.matrixlead.com/monaco-editor/min/vs/loader.js"></script> 
    <script> 
     require.config({ paths: { 'vs': 'https://www.matrixlead.com/monaco-editor/min/vs' }}) 

     require(["vs/editor/editor.main"], function() { 
      var editor = monaco.editor.create(document.getElementById('container'), { 
      value: 'function x() {\n\tconsole.log("Hello world!");\n}', 
      language: 'javascript', 
      minimap: { enabled: false }, 
      automaticLayout: true, 
      scrollBeyondLastLine: false 
      }); 
     }); 
    </script> 
    </body> 
</html> 

これはChromeで動作します。しかし、Safariでは、すばやくスクロールしながら、ちらつきを見ることができました。

誰でもこれを解決する方法を知っていますか?

答えて

0

グリッチをスクロールサファリを修正するには、このルールにoverflow: autoを削除します。

​​
+0

は 'オーバーフローを削除...ありがとう:auto'は、Safariのスクロールグリッチを修正しません。しかし、ChromeとSafariの両方で上下にスクロールしながらスクロールバーを表示できるようになりました。これは私が望むものではありません。 – SoftTimur

+0

@SoftTimurああ - 私は今それを見る。簡単に修正していただき、ありがたいことに:CSSの上部にある 'body {}'ルールに 'overflow:hidden;'を追加してください。 –

+0

しかし、Chromeでは、これを行うことで、多くの行がある場合、いくつかの行が下部に隠れて表示されます。 – SoftTimur