July 14 2022

The Learning Journey Continues at InstructureCon

We Can All Go Further Together

Soak Up the Inspiration

Hear from educators and other inspiring thinkers on how they've overcome and learned some important lessons along the way.

Soak Up the Inspiration

Hear from educators and other inspiring thinkers on how they've overcome and learned some important lessons along the way.

Soak Up the Inspiration

Hear from educators and other inspiring thinkers on how they've overcome and learned some important lessons along the way.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Watch on-demand now

Letterpress chambray brunch.
Vice mlkshk crucifix beard chillwave meditation hoodie asymmetrical Helvetica.
Ugh PBR&B kale chips Echo Park.
Gluten-free mumblecore chambray mixtape food truck.

So, annoyingly, most JS solutions don't do horizontal tickers on an infinite loop, nor do they render all that smoothly.

The difficulty with CSS was getting the animation to transform the entire items 100% yet include an offset that was only the width of the browser (and not the items full width).

Setting the start of the animation to anything less than zero (e.g. -100%) is unreliable as it is based on the items width, and may not offset the full width of the browser or creates too large an offset

Padding left on the wrapper allows us the correct initial offset, but you still get a 'jump' as it then loops too soon. (The full text does not travel off-screen)

This is where adding display:inline-block to the item parent, where the natural behaviour of the element exists as inline, gives an opportunity to add padding-right 100% here. The padding is taken from the parent (as its treated as inline) which usefully is the wrapper width.

Magically* we now have perfect 100% offset, a true 100% translate (width of items) and enough padding in the element to ensure all items leave the screen before it repeats! (width of browser)

*Why this works: The inside of an inline-block is formatted as a block box, and the element itself is formatted as an atomic inline-level box.
Uses `box-sizing: content-box`
Padding is calculated on the width of the containing box.
So as both the ticker and the items are formatted as nested inline, the padding must be calculated by the ticker wrap.

Mark Pope
Mark Pope
Co-Owner
Pope Tech
Kathy Wood
Kathy Wood
Education Partner Manager
ReadSpeaker
Ginger Dewey
Ginger Dewey
Education Development Manager
ReadSpeaker
Dr. Claudette Fuller
Dr. Claudette Fuller
Fayetteville State University
Dr. Shunta’ Hailey Gregory
Dr. Shunta’ Hailey Gregory
Fayetteville State University
Marcus Popetz
Marcus Popetz
Harmonize
Robert Rundquist
Robert Rundquist
Dean of Institutional Effectiveness
Chaffey College
Max de Raaff
Max de Raaff
Team Lead Business Development
FeedbackFruits
Ksenia Ionova
Ksenia Ionova
Instructional Designer
Cornell University
William McCoy
William McCoy
Vice President for Academic Affairs
Eastern Nazarene College
Dr. Lance Ford
Dr. Lance Ford
Educational Advocate
Zoom
Dylan Barth, Ph.D.
Dylan Barth, Ph.D.
Director of Professional Learning
Online Learning Consortium