diff --git a/IPython/frontend/html/notebook/static/notebook/less/codemirror.less b/IPython/frontend/html/notebook/static/notebook/less/codemirror.less
index 52fe51a..1a02710 100644
--- a/IPython/frontend/html/notebook/static/notebook/less/codemirror.less
+++ b/IPython/frontend/html/notebook/static/notebook/less/codemirror.less
@@ -18,14 +18,28 @@
.CodeMirror-scroll {
/* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
/* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
- overflow-y: hidden;
- overflow-x: auto; /* Changed from auto to remove scrollbar */
+ /* overflow: scroll prevents scrollbars being drawn on top of the last line of the cell, */
+ /* but at the expense of extra gutter at the bottom. To compensate, we shrink the margin */
+ /* between the last line and the scrollbar when it's drawn. */
+ overflow: scroll;
+ margin-bottom: -38px; /* default margin is -30px */
+}
+
+/* this one is needed for Text Cells to match code cells for some reason */
+.CodeMirror-wrap .CodeMirror-scroll {
+ overflow: scroll;
+}
+
+/* CM sometimes draws a vertical scrollbar under zoom, but it never should in the Notebook. */
+/* this hides them - display: none would be preferable, but it gets clobbered by CodeMirror */
+.CodeMirror-vscrollbar, .CodeMirror-scrollbar-filler {
+ visibility: hidden;
}
.CodeMirror-lines {
- /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
- /* we have set a different line-height and want this to scale with that. */
- padding: 0.4em;
+ /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
+ /* we have set a different line-height and want this to scale with that. */
+ padding: 0.4em;
}
.CodeMirror-linenumber {
diff --git a/IPython/frontend/html/notebook/static/style/style.min.css b/IPython/frontend/html/notebook/static/style/style.min.css
index b03e775..f2ba5af 100644
--- a/IPython/frontend/html/notebook/static/style/style.min.css
+++ b/IPython/frontend/html/notebook/static/style/style.min.css
@@ -940,7 +940,9 @@ div.out_prompt_overlay{height:100%;padding:0px;position:absolute;border-radius:4
div.out_prompt_overlay:hover{-webkit-box-shadow:inset 0 0 1px #000000;-moz-box-shadow:inset 0 0 1px #000000;box-shadow:inset 0 0 1px #000000;background:rgba(240, 240, 240, 0.5);}
div.output_prompt{color:darkred;margin:0 5px 0 -5px;}
.CodeMirror{line-height:1.231;height:auto;background:none;}
-.CodeMirror-scroll{overflow-y:hidden;overflow-x:auto;}
+.CodeMirror-scroll{overflow:scroll;margin-bottom:-38px;}
+.CodeMirror-wrap .CodeMirror-scroll{overflow:scroll;}
+.CodeMirror-vscrollbar,.CodeMirror-scrollbar-filler{visibility:hidden;}
.CodeMirror-lines{padding:0.4em;}
.CodeMirror-linenumber{padding:0 8px 0 4px;}
.CodeMirror-gutters{border-bottom-left-radius:4px;border-top-left-radius:4px;}