diff --git a/src/App.js b/src/App.js
index 3823bd03..1da3ff7c 100644
--- a/src/App.js
+++ b/src/App.js
@@ -23,18 +23,6 @@ export default {
     style () { return { 'background-image': `url(${this.background})` } },
     sitename () { return this.$store.state.config.name }
   },
-  created () {
-    // this is to detect user zooming mostly
-    window.addEventListener('resize', this.fixSidebarWidth)
-  },
-  mounted () {
-    // for some reason, at least in dev mode, dom is not ready enough at this point
-    // in theory calling the function directly here should be enough, but it's not
-    setTimeout(() => { this.fixSidebarWidth() }, 500)
-  },
-  destroyed () {
-    window.removeEventListener('resize', this.fixSidebarWidth)
-  },
   methods: {
     activatePanel (panelName) {
       this.mobileActivePanel = panelName
@@ -44,17 +32,6 @@ export default {
     },
     logout () {
       this.$store.dispatch('logout')
-    },
-    fixSidebarWidth () {
-      // firefox
-      let barwidth = window.innerWidth - document.body.offsetWidth
-      if (document.body.offsetWidth <= 0) {
-        // chromium
-        barwidth = window.innerWidth - document.body.scrollWidth
-      }
-      // adjust the sidebar size to fit the scrollbar width to keep the gap consistently sized
-      document.getElementById('sidebar-container').style.width = `${345 + barwidth}px`
-      document.getElementById('sidebar-container').style.paddingRight = `${barwidth}px`
     }
   }
 }
diff --git a/src/App.scss b/src/App.scss
index c3c9013e..5a117f04 100644
--- a/src/App.scss
+++ b/src/App.scss
@@ -191,7 +191,7 @@ nav {
     flex-shrink: 1;
 }
 
-.sidebar {
+.sidebar-bounds {
   flex: 0;
   flex-basis: 35%;
 }
@@ -222,21 +222,25 @@ nav {
   body {
     overflow-y: scroll;
   }
-  .sidebar {
+  .sidebar-bounds {
     overflow: hidden;
     max-height: 100vh;
     width: 345px;
     position: fixed;
     margin-top: -10px;
 
-    .sidebar-container {
+    .sidebar-scroller {
       height: 96vh;
       width: 365px;
       padding-top: 10px;
-      padding-right: 20px;
+      padding-right: 50px;
       overflow-x: hidden;
       overflow-y: scroll;
     }
+
+    .sidebar {
+      width: 345px;
+    }
   }
   .sidebar-flexer {
     max-height: 96vh;
diff --git a/src/App.vue b/src/App.vue
index 59cfcaa6..0d004665 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,6 +1,6 @@
 <template>
   <div id="app" v-bind:style="style" class="base02-background">
-    <nav class='container base01-background base04' @click="scrollToTop()">
+    <nav class='container base01-background base04' @click="scrollToTop()" id="nav">
       <div class='inner-nav' :style="logoStyle">
         <div class='item'>
           <router-link :to="{ name: 'root'}">{{sitename}}</router-link>
@@ -18,11 +18,13 @@
         <button @click="activatePanel('timeline')" class="base01-background base04">Timeline</button>
       </div>
       <div class="sidebar-flexer" :class="{ 'mobile-hidden': mobileActivePanel != 'sidebar'}">
-        <div class="sidebar" :class="{ 'mobile-hidden': mobileActivePanel != 'sidebar' }">
-          <div class="sidebar-container" id="sidebar-container">
-            <user-panel></user-panel>
-            <nav-panel></nav-panel>
-            <notifications v-if="currentUser"></notifications>
+        <div class="sidebar-bounds">
+          <div class="sidebar-scroller">
+            <div class="sidebar">
+              <user-panel></user-panel>
+              <nav-panel></nav-panel>
+              <notifications v-if="currentUser"></notifications>
+            </div>
           </div>
         </div>
       </div>