Make Course Menu Sticky

This idea has been developed and deployed to Canvas

For more information, please read through the  Canvas Release Notes (2021-10-16) - Instructure Community


I know this was already created as an idea a couple of times already but I'd like to open it up again as a new idea. With the recent changes to the Canvas layout it might be a good idea to revisit this.

 

When scrolling down in a course the course menu will disappear. See screen shots. In the first one you can see that the menu is present.

192784_Screen Shot 2016-07-20 at 10.06.59 AM.pngScreen Shot 2016-07-20 at 10.06.59 AM.png

192797_Screen Shot 2016-07-20 at 10.07.46 AM.pngScreen Shot 2016-07-20 at 10.07.46 AM.png

In the second one you can see the menu is gone. This is very cumbersome especially when on the modules screen or another screen that is really long. I'd like to have the course menu be in a sticky position to the left like it was before.

Please also refer to this closely related idea: https://community.canvaslms.com/ideas/5489-freeze-top-left-and-side-banners-of-canvas

 

60 Comments
nsweeten
Community Contributor

It is even worse than an inconvenience for student/users and faculty who may just get entirely lost. 

People get tired of struggling and develop awkward workarounds. I have watched the (excruciating) process countless times. Users may be scrolling through a long document and don't see a next button nor a course menu.  All too often, they will log entirely out of Canvas and back on again just to see a menu!  Why?   The Nav menu screen space is already committed, it is just blank. 

Not everyone is a savvy computer user or Canvas user. It comes down to how much design effort and training time we want to build into every course to prevent users from being derailed by the interface itself.

pj1
Community Member

I agree with this idea. In my opinion it is almost essencial, as pointed out in the comments, it would spare us a lot of scrolling.

ArmstrongA16
Community Member

As a Student:

When scrolling through my course through CANVAS the menu that shows "Home, Syllabus, Summary, etc.." should be static. If I'm on a discussion that has 30 posts, the user has to scroll all the way to the top to navigate to a different part of the course. This can be fixed by just making that sub menu static similar to have websites have similar headers when you scroll down. It's a QoL change that can make navigating to different portions of the course a lot easier, such as reading discussions, then clicking modules to see what was required for the week.

Below are screenshots of what I'm talking about. 

Capture1.PNG

 

 

 

 

 

As seen, when scrolling down to even the bottom of the short list of discussions, the sub-menu disappears. Sometimes discussion post can have 30+ replies so it takes a moment to get to the top.

Capture2.PNG

gvan
Community Novice

After you click on a course, there is a side bar that shows various options listed as: Home, Announcement, Modules, Grades, Evaluate Your Course, Library, etc...

It will be nice to have these options remain static when you scroll down the page.

For instance, we are pretty far along in the courses now and always end up scrolling deep down the "Modules" page for relevant information. It is a hassle to have to scroll all the way back up the page to see these hot links.

 

hdicarlo
Community Member

Another 5+ year old request that should be a "No Brainer" which would save hundreds of us time and frustration.

Come on Canvas!

xcotto1
Community Participant

Hi @all,

I found a way to achieve this, is not perfect but all it takes is tweaking some CSS attributes. I prefer using userscript instead of overriding the global CSS  in the theme editor, so I'm using this script that I've created (Tampermonkey extension.)

 

 

 

// ==UserScript==
// @name         Static Course Menu
// @namespace    https://github.com/cotitto/canvas-userscripts
// @version      1.1
// @description  Static Course Menu
// @author       XCT
// @include      https://*.instructure.com/courses/*
// ==/UserScript==

(function() {
    'use strict';
    $('.with-left-side, #left-side').css('position', 'sticky')
    $('.ic-Layout-contentMain').css('margin-top', '-1000px')
    $('#left-side').css({"padding-top": "20px", "margin-left": "-200px"});
})();

 

 

 

@jdesiderio  I hope this helps in some way.

Best,

-Xavier

erinhmcmillan
Instructure Alumni
Instructure Alumni
Status changed to: On Beta
Comments from Instructure

The Account, Course, and User Navigation Menus remain sticky and are always visible on their respective pages. This change allows users to access the menus at any time.

For more information, please read through the  Canvas Release Notes (2021-10-16) - Instructure Community

 

Stef_retired
Instructure Alumni
Instructure Alumni
Status changed to: Complete
 
KristinL
Community Team
Community Team
Status changed to: New
 
KristinL
Community Team
Community Team
Status changed to: Completed