diff --git a/_config.yml b/_config.yml index 2265a8c30eda..f541e7489aab 100644 --- a/_config.yml +++ b/_config.yml @@ -303,7 +303,7 @@ enable_navbar_social: true # enables displaying social links in the enable_project_categories: true # enables categorization of projects into # multiple categories enable_medium_zoom: true # enables image zoom feature (as on medium.com) - +enable_progressbar: false # enables a horizontal progress bar linked to the vertical scroll position # ----------------------------------------------------------------------------- # Library versions diff --git a/_includes/header.html b/_includes/header.html index 6d7ef30e5826..4b8f2c7158fd 100644 --- a/_includes/header.html +++ b/_includes/header.html @@ -162,4 +162,12 @@ - \ No newline at end of file +{% if site.enable_progressbar %} + + +
+ +
+
+{%- endif %} + diff --git a/_includes/scripts/progressBar.html b/_includes/scripts/progressBar.html new file mode 100644 index 000000000000..88bb73cd35e4 --- /dev/null +++ b/_includes/scripts/progressBar.html @@ -0,0 +1,80 @@ +{% if site.enable_progressbar %} + + + + +{%- endif %} diff --git a/_layouts/default.html b/_layouts/default.html index 1d291e406fca..2887107cc95f 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -30,5 +30,6 @@ {% include scripts/misc.html %} {% include scripts/mathjax.html %} {% include scripts/analytics.html %} + {% include scripts/progressBar.html %} diff --git a/_layouts/distill.html b/_layouts/distill.html index 018b2897dd44..b104771aa720 100644 --- a/_layouts/distill.html +++ b/_layouts/distill.html @@ -105,5 +105,6 @@

Contents

{% include scripts/bootstrap.html %} {% include scripts/analytics.html %} + {% include scripts/progressBar.html %} diff --git a/_sass/_base.scss b/_sass/_base.scss index 39758b1b3102..eb99ea481060 100644 --- a/_sass/_base.scss +++ b/_sass/_base.scss @@ -657,3 +657,58 @@ html.transition *:after { } } } + +progress { + /* Positioning */ + position: fixed; + left: 0; + top: 56px; + z-index: 10; + + /* Dimensions */ + width: 100%; + height: 5px; + + /* Reset the appearance */ + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + + /* Get rid of the default border in Firefox/Opera. */ + border: none; + + /* Progress bar container for Firefox/IE10 */ + background-color: transparent; + + /* Progress bar value for IE10 */ + color: var(--global-theme-color); + } + + progress::-webkit-progress-bar { + background-color: transparent; + } + + progress::-webkit-progress-value { + background-color: var(--global-theme-color); + } + + progress::-moz-progress-bar { + background-color: var(--global-theme-color); + } + + .progress-container { + width: 100%; + background-color: transparent; + position: fixed; + top: 56px; + left: 0; + height: 5px; + display: block; + } + + .progress-bar { + background-color: var(--global-theme-color); + width: 0%; + display: block; + height: inherit; + }