diff --git a/js/builder.es6.js b/js/builder.es6.js
index 9ed46b35e5bde13724dff995adcf3f09166b5d0d..3ce00d8aba386753fb5a986842f5b1edb3f82d18 100644
--- a/js/builder.es6.js
+++ b/js/builder.es6.js
@@ -44,8 +44,9 @@
         window.innerHeight || document.documentElement.clientHeight;
       if (bounding.bottom > viewPortHeight) {
         const $dialog = $('.ui-dialog-content', dialog);
-        const pos = $dialog.dialog('option', 'position');
-        $dialog.dialog('option', 'position', pos);
+        const height = viewPortHeight - 200;
+        $dialog.dialog('option', 'height', height);
+        $dialog.css('overscroll-behavior', 'contain');
       }
     });
   }
diff --git a/js/builder.js b/js/builder.js
index 1ff568755565817b56561620f1f972945be54235..8a4cb798c29c53b57fc4dbd2a04344ca1670cca6 100644
--- a/js/builder.js
+++ b/js/builder.js
@@ -30,8 +30,9 @@
       var viewPortHeight = window.innerHeight || document.documentElement.clientHeight;
       if (bounding.bottom > viewPortHeight) {
         var $dialog = $('.ui-dialog-content', dialog);
-        var pos = $dialog.dialog('option', 'position');
-        $dialog.dialog('option', 'position', pos);
+        var height = viewPortHeight - 200;
+        $dialog.dialog('option', 'height', height);
+        $dialog.css('overscroll-behavior', 'contain');
       }
     });
   }