out

Routledge handbook of the Indian diaspora / edited by Radha Sarma Hegde and Ajaya Kumar Sahoo




out

Report on the 2007 Western Australian Museum, Department of Maritime Archaeology, Batavia land sites National Heritage listing archaeological survey / edited by Corioli Souter with contributions by Ross Anderson and [four others]




out

Greeks, Romans, Germans : how the Nazis usurped Europe's classical past / Johann Chapoutot ; translated by Richard R. Nybakken

Chapoutot, Johann, author




out

Redefining Southern culture : mind and identity in the modern South / James C. Cobb

Cobb, James C. (James Charles), 1947-




out

Masterless men : poor whites and slavery in the antebellum South / Keri Leigh Merritt

Merritt, Keri Leigh, 1980- author




out

Find out IPL's most valuable franchise

The broadcast made an estimated Rs20 billion in ad sales revenues from the IPL this year







out

Don't rule Bangladesh out!

Rajneesh Gupta highlights important numbers for the Bangladesh team from World Cups.




out

Hashim Amla: One of South Africa's all-time greats

Here's a look at the South African run machine's brilliant record in international cricket, says Rajneesh Gupta.




out

Clinical Trials during an infectious outbreaks: More questions than answers

The world is facing a pandemic of COVID-19, for which there is no effective therapy. And any new therapy can be used in medical practice only if its e




out

Covid-19: Migrant workers gather at Mangaluru railway station following rumours about special trains

Karnataka Revenue Minister R Ashok said the government was awaiting consent from other states to send the migrant workers home.




out

It will be a hollow feeling if IPL and T20 World Cup goes ahead without fans, says Australia’s Carey

Carey is open to the idea of playing in empty stadiums, which according to him could be a way forward.




out

Here’s what we know (and don’t know) about asymptomatic Covid-19 patients

A physician answers five common questions.




out

Covid-19: Scientific journals are now pumping out research faster than ever

While there is an urgent need for data, false information can be worse than none at all.




out

Samit Basu’s new novel looks at how reality is shaped and what humans can do about it

‘Chosen Spirits’ is neither simple dystopic science-fiction nor straightforward political satire, but a call for freedom in an age of puppy adoption shows.




out

No altruism: Watford chairman hits out at Premier League’s proposal to end season at neutral venues

Watford chairman Scott Duxbury said he was worried about the impact of a distorted nine-game mini-league.




out

09/22:12 EST Warning to Sheep Graziers for South West Slopes forecast district




out

09/17:49 EST Cancellation Severe Thunderstorm Warning for Southern Tablelands Forecast District.




out

09/22:00 EST Marine Wind Warning Summary for New South Wales




out

Generic Imatinib Cuts Costs Without Affecting CML Outcomes

Clinicians and their chronic myeloid leukaemia patients looking to switch to generic imatinib will see no change in outcomes or safety, while markedly reducing healthcare costs, say UK researchers.
Medscape News UK




out

Six-Year Earnings and Disability Benefit Outcomes of Youth Vocational Rehabilitation Applicants

The authors document the earnings in the sixth calendar year after youths’ vocational rehabilitation (VR) applications and Social Security Administration (SSA) benefit outcomes during the six years after their VR applications.




out

Insights About the Transition System for SSI Youth from the National Evaluation of Promoting Readiness of Minors in SSI (PROMISE)

This article discusses insights gained from the national PROMISE evaluation about the current transition system, which are relevant to current initiatives supporting youth with disabilities during the transition to adulthood.




out

Assistive Technology Services for Youth in the Vermont Linking Learning to Careers Program

The Vermont Division of Vocational Rehabilitation’s Linking Learning to Careers (LLC) program provides enhanced services to help high school students with disabilities as they make the transition to careers or postsecondary education. These enhanced services include access to assistive technology.




out

New Study Measures High Schools’ Impacts on Students’ Long-Term Outcomes

Mathematica’s study helps Louisiana measure its public high schools’ contribution to student outcomes such as high school graduation, college enrollment, and eventual earnings.




out

How Much Bias Results if a Quasi-Experimental Design Combines Local Comparison Groups, a Pretest Outcome Measure and Other Covariates?: A Within Study Comparison of Preschool Effects

This study examines when nonexperiments might substitute for experiments that are done in real-world settings in order to learn what works to affect some socially valued outcome.




out

Inventory of State-Level Medicaid Policies, Programs, and Initiatives to Improve Maternity Care and Outcomes

Mathematica was contracted by Medicaid and CHIP Payment and Access Commission (MACPAC) to create an updated inventory of state- and territory-level Medicaid policies, programs, or initiatives that are designed to improve the access to, quality of, and outcomes of maternity care services.




out

Effects of Medicaid Expansion on Access, Treatment, and Outcomes for Patients with Acute Myocardial Infarction

Uninsured patients have decreased access to care, lower rates of percutaneous coronary intervention (PCI), and worse outcomes after acute myocardial infarction (AMI).




out

The outlaw ocean: journeys across the last untamed frontier / Ian Urbina

Barker Library - SH319.A2 U73 2019




out

Sustainable Rice Straw Management Martin Gummert, Nguyen Van Hung, Pauline Chivenge, Boru Douthwaite, editors

Online Resource




out

Endangered species and fragile ecosystems in the South China Sea: The Philippines v. China arbitration / Alfredo C. Robles, Jr

Online Resource




out

Wild sea: a history of the Southern Ocean / Joy McCann

Dewey Library - GC461.M33 2019




out

Wild at heart: America's turbulent relationship with nature, from exploitation to redemption / Alice Outwater

Rotch Library - GF75.O87 2019




out

Ocean outbreak: confronting the rising tide of marine disease / Drew Harvell

Hayden Library - QH541.5.S3 H37 2019




out

Mouthwatering food pix to lift your Friday mood

Hemantkumar Shivsharan is making the most of the lockdown with these tempting home cooked meals.




out

Outstanding Scroll and Parallax CSS Effects

CSS effects can be a great way to add some visual interest to your website. A common web design mistake is making a website that’s too static. One little parallax animation can do wonders to make your design more interesting …




out

10 Open Source Calendar UI Layouts Built With CSS

Building a full calendar UI is tough work. There are major differences between calendars on the web and calendars for mobile apps, so it’s good to study examples and see what’s out there.

After scouring through CodePen, I’ve organized …




out

Fascinating CSS Grid Layout Examples and Tutorials

CSS Grid is one of the most powerful tools available to developers. The simple module allows you to create entire website layouts, responsive galleries, and other cool effects. With enough creativity, you can do a lot of interesting things using …




out

Outstanding Reviewers for Soft Matter in 2019

Soft Matter, 2020, 16,3845-3845
DOI: 10.1039/D0SM90069A, Editorial

We would like to take this opportunity to highlight the Outstanding Reviewers for Soft Matter in 2019, as selected by the editorial team for their significant contribution to the journal.
The content of this RSS Feed (c) The Royal Society of Chemistry




out

Beautiful Scrolling Experiences – Without Libraries

Michelle Barker appears as one of a heavenly host, coming forth with scroll in hand to pronounce an end to janky scrolljacking! Unto us a new specification is born, in the city of TimBL, and its name shall be called Scroll Snap.


Sponsor: Order any Standard paperback(s) and get a surprise gift card in the box for YOU. While supplies last, from your pals at A Book Apart!


One area where the web has traditionally lagged behind native platforms is the perceived “slickness” of the app experience. In part, this perception comes from the way the UI responds to user interactions – including the act of scrolling through content.

Faced with the limitations of the web platform, developers frequently reach for JavaScript libraries and frameworks to alter the experience of scrolling a web page – sometimes called “scroll-jacking” – not always a good thing if implemented without due consideration of the user experience. More libraries can also lead to page bloat, and drag down a site’s performance. But with the relatively new CSS Scroll Snap specification, we have the ability to control the scrolling behaviour of a web page (to a degree) using web standards – without resorting to heavy libraries. Let’s take a look at how.

Scroll Snap

A user can control the scroll position of a web page in a number of ways, such as using a mouse, touch gesture or arrow keys. In contrast to a linear scrolling experience, where the rate of scroll reflects the rate of the controller, the Scroll Snap specification enables a web page to snap to specific points as the user scrolls. For this, we need a fixed-height element to act as the scroll container, and the direct children of that element will determine the snap points. To demonstrate this, here is some example HTML, which consists of a <div> containing four <section> elements:

<div class="scroll-container">
  <section>
    <h2>Section 1</h2>
  </section>
  <section>
    <h2>Section 2</h2>
  </section>
  <section>
    <h2>Section 3</h2>
  </section>
  <section>
    <h2>Section 4</h2>
  </section>
</div>

Scroll snapping requires the presence of two main CSS properties: scroll-snap-type and scroll-snap-align. scroll-snap-type applies to the scroll container element, and takes two keyword values. It tells the browser:

  • The direction to snap
  • Whether snapping is mandatory

scroll-snap-align is applied to the child elements – in this case our <section>s.

We also need to set a fixed height on the scroll container, and set the relevant overflow property to scroll.

.scroll-container {
  height: 100vh;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
}

section {
  height: 100vh;
  scroll-snap-align: center;
}

In the above example, I’m setting the direction in the scroll-snap-type property to y to specify vertical snapping. The second value specifies that snapping is mandatory. This means that when the user stops scrolling their scroll position will always snap to the nearest snap point. The alternative value is proximity, which determines that the user’s scroll position will be snapped only if they stop scrolling in the proximity of a snap point. (It’s down to the browser to determine what it considers to be the proximity threshold.)

If you have content of indeterminate length, which might feasibly be larger than the height of the scroll container (in this case 100vh), then using a value of mandatory can cause some content to be hidden above or below the visible area, so is not recommended. But if you know that your content will always fit within the viewport, then mandatory can produce a more consistent user experience.

See the Pen Simple scroll-snap example by Michelle Barker (@michellebarker) on CodePen.

In this example I’m setting both the scroll container and each of the sections to a height of 100vh, which affects the scroll experience of the entire web page. But scroll snapping can also be implemented on smaller components too. Setting scroll snapping on the x-axis (or inline axis) can produce something like a carousel effect.

In this demo, you can scroll horizontally scroll through the sections:

See the Pen Carousel-style scroll-snap example by Michelle Barker (@michellebarker) on CodePen.

The Intersection Observer API

By implementing the CSS above, our web page already has a more native-like feel to it. To improve upon this further we could add some scroll-based transitions and animations. We’ll need to employ a bit of Javascript for this, using the Intersection Observer API. This allows us to create an observer that watches for elements intersecting with the viewport, triggering a callback function when this occurs. It is more efficient than libraries that rely on continuously listening for scroll events.

We can create an observer that watches for each of our scroll sections coming in and out of view:

const sections = [...document.querySelectorAll('section')]

const options = {
  rootMargin: '0px',
  threshold: 0.25
}

const callback = (entries) => {
  entries.forEach((entry) => {
    if (entry.intersectionRatio >= 0.25) {
      target.classList.add("is-visible");
    } else {
      target.classList.remove("is-visible");
    }
  })
}

const observer = new IntersectionObserver(callback, options)

sections.forEach((section, index) => {
  observer.observe(section)
})

In this example, a callback function is triggered whenever one of our sections intersects the container by 25% (using the threshold option). The callback adds a class of is-visible to the section if it is at least 25% in view when the intersection occurs (which will take effect when the element is coming into view), and removes it otherwise (when the element is moving out of view). Then we can add some CSS to transition in the content for each of those sections:

section .content {
  opacity: 0:
}

section.is-visible .content {
  opacity: 1;
  transition: opacity 1000ms:
}

This demo shows it in action:

See the Pen Scrolling with Intersection Observer by Michelle Barker (@michellebarker) on CodePen.

You could, of course, implement some much more fancy transition and animation effects in CSS or JS!

As an aside, it’s worth pointing out that, in practice, we shouldn’t be setting opacity: 0 as the default without considering the experience if JavaScript fails to load. In this case, the user would see no content at all! There are different ways to handle this: We could add a .no-js class to the body (which we remove on load with JS), and set default styles on it, or we could set the initial style (before transition) with JS instead of CSS.

Position: sticky

There’s one more CSS property that I think has the potential to aid the scroll experience, and that’s the position property. Unlike position: fixed, which locks the position of an element relative to the nearest relative ancestor and doesn’t change, position: sticky is more like a temporary lock. An element with a position value of sticky will become fixed only until it reaches the threshold of its parent, at which point it resumes relative positioning.

By “sticking” some elements within scroll sections we can give the impression of them being tied to the action of scrolling between sections. It’s pretty cool that we can instruct an element to respond to it’s position within a container with CSS alone!

Browser support and fallbacks

The scroll-snap-type and scroll-snap-align properties are fairly well-supported. The former requires a prefix for Edge and IE, and older versions of Safari do not support axis values. In newer versions of Safari it works quite well. Intersection Observer similarly has a good level of support, with the exception of IE.

By wrapping our scroll-related code in a feature query we can provide a regular scrolling experience as a fallback for users of older browsers, where accessing the content is most important. Browsers that do not support scroll-snap-type with an axis value would simply scroll as normal.

@supports (scroll-snap-type: y mandatory) {
  .scroll-container {
    height: 100vh;
    overflow-y: scroll;
    scroll-snap-type: y mandatory;
  }

  section {
    height: 100vh;
    scroll-snap-align: center;
  }
}

The above code would exclude MS Edge and IE, as they don’t support axis values. If you wanted to support them you could do so using a vendor prefix, and using @supports (scroll-snap-type: mandatory) instead.

Putting it all together

This demo combines all three of the effects discussed in this article.

Summary

Spending time on scroll-based styling might seem silly or frivolous to some. But I believe it’s an important part of positioning the web as a viable alternative to native applications, keeping it open and accessible. While these new CSS features don’t offer all of the control we might expect with a fully featured JS library, they have a major advantage: simplicity and reliability. By utilising web standards where possible, we can have the best of both worlds: Slick and eye-catching sites that satisfy clients’ expectations, with the added benefit of better performance for users.


About the author

Michelle is a Lead Front End Developer at Bristol web agency Atomic Smash, author of front-end blog CSS { In Real Life }, and a Mozilla Tech Speaker. She has written articles for CSS Tricks, Smashing Magazine, and Web Designer Magazine, to name a few. She enjoys experimenting with new CSS features and helping others learn about them.

More articles by Michelle




out

No visible bruises: what we don't know about domestic violence can kill us / Rachel Louise Snyder

Dewey Library - HV6626.2.S59 2019




out

Automation and utopia: human flourishing in a world without work / John Danaher

Online Resource




out

Militarization: a reader / Roberto J. González, Hugh Gusterson, Gustaaf Houtman, editors ; in collaboration with Catherine Besteman, Andrew Bickford, Catherine Lutz, Katherine T. McCaffrey, Austin Miller, David H. Price, David Vine

Dewey Library - U21.2.M558 2019




out

Sovereignty in the south: intrusive regionalism in Africa, Latin America, and Southeast Asia / Brooke N. Coe

Dewey Library - JC327.C59 2019




out

Money rock: a family's story of cocaine, race, and ambition in the new South / Pam Kelley

Dewey Library - HV5831.N8 K45 2018




out

Race on the brain: what implicit bias gets wrong about the struggle for racial justice / Jonathan Kahn

Dewey Library - HV9950.K34 2018




out

What we talk about when we talk about rape / Sohaila Abdulali

Hayden Library - HV6558.A295 2018




out

A place outside the law: forgotten voices from Guantanamo / Peter Jan Honigsberg

Dewey Library - HV6432.H67 2019




out

False alarm: the truth about political mistruths in the Trump era / Ethan Porter, Thomas J. Wood

Dewey Library - JK1726.P67 2019