sel

Bee & Me Makes Best-Seller Lists

Publisher’s Weekly’s Children’s Picture Book Bestsellers
(1/19/09) features Bee & Me at #7

The New York Times Book Review Children’s Best Seller List (2/1/09) features Bee & Me at #9

The subject of honeybees' mysterious dwindling population throughout the world has been a growing concern in the news in recent years. Bee & Me brings the critical importance of bees to light for young children through the innovative, full color process of ANIMOTION™ in an engaging story of friendship and understanding. Bee & Me will charm readers while providing valuable information about how important bees are to sustainable agriculture. Bee & Me is sure to fascinate, entertain and engage readers of all ages.

Features:

  • Unique animated windows on almost every spread enhancing the action of the story.

    The first time ever that such a technique has been applied in full color through the ANIMOTION™ process.

  • Enchanting full color illustrations.
  • Special appendix full of fun and important bee facts.




sel

Bee & Me Named Publisher's Weekly Bestseller

Publisher’s Weekly’s Children’s Picture Book Bestsellers (2/16/09) features Bee & Me at #8

When a young boy discovers a bee trapped in his bedroom he hides for fear of being stung. But when the amiable bee frantically explains all that bees do, the boy comes to understand how good things come in different packages: "Bees make honey. That much we know. Bees also spread pollen, which makes all things grow."

The subject of honeybees' mysterious dwindling population throughout the world has been a growing concern in the news in recent years. Bee & Me brings the critical importance of bees to light for young children through the innovative, full color process of ANIMOTION™ in an engaging story of friendship and understanding. Bee & Me will charm readers while providing valuable information about how important bees are to sustainable agriculture. Bee & Me is sure to fascinate, entertain and engage readers of all ages.

Coming soon: Baby Turtle's Tale

This is something to "sea" and read. Full-color ani-motion technology comes alive and propels Baby Turtle's Tale, a lovely and touching story about a baby sea turtle hatching and making his way in the underwater world.

Elle McGuinness, the author of the well-received Bee & Me, takes us on the sea turtle's adventures from the beach to the reunion with his family on the coral reef.

Baby Turtle's Tale will appeal to young readers interested in preserving the environment and helping the plight of endangered species like sea turtles.

Features an educational appendix of fun and interesting facts about sea turtles




sel

Reversible bonding in thermoplastic elastomer microfluidic platforms for harvestable 3D microvessel networks

Lab Chip, 2024, 24,4948-4961
DOI: 10.1039/D4LC00530A, Paper
Open Access
  This article is licensed under a Creative Commons Attribution 3.0 Unported Licence.
Byeong-Ui Moon, Kebin Li, Lidija Malic, Keith Morton, Han Shao, Lauren Banh, Sowmya Viswanathan, Edmond W. K. Young, Teodor Veres
An openable, reversibly bonded microfluidic cell culture platform fabricated in thermoplastic elastomer and polystyrene for the generation, recovery, and extraction of engineered-microvessel networks.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Rapid low-cost assembly of modular microvessel-on-a-chip with benchtop xurography

Lab Chip, 2024, 24,5065-5076
DOI: 10.1039/D4LC00565A, Paper
Open Access
Shashwat S. Agarwal, Marcos Cortes-Medina, Jacob C. Holter, Alex Avendano, Joseph W. Tinapple, Joseph M. Barlage, Miles M. Menyhert, Lotanna M. Onua, Jonathan W. Song
Our study is a novel implementation of xurography for multi-layer microfluidic device fabrication. We demonstrate the versatility of this approach by presenting several modular 3D vessel-matrix arrangements.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Self-actuated microfluidic chiplet for two-stage multiplex nucleic acid amplification assay

Lab Chip, 2024, Advance Article
DOI: 10.1039/D4LC00752B, Paper
Open Access
Felix Ansah, Marziyeh Hajialyani, Fatemeh Ahmadi, Yuming Gu, Ergün Alperay Tarım, Michael G. Mauk, Gordon A. Awandare, Haim H. Bau
Self-actuated chiplet for Penn-RAMP assay.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Coastal States must register all fishing vessels, says Union Minister George Kurian

George Kurian emphasises the need for a framed regulation and policy to improve the livelihood of the fishing community and increase the number of vessels to optimally exploit the country’s marine fisheries resources




sel

Dream Seller and Fontana please




sel

Dream Seller and Karanveer show out




sel

Knotty Legend, Mojito, El Greco and Dream Seller impress




sel

Self-declaration for advertisers limited to food, health sectors

I&B Ministry stated that advertisements issued for products related to food and health sectors will be required to upload an annual self-certificate on the Broadcast Seva Portal and Press Council of India portal.  




sel

Bengal Governor launches self-defence course 'Abhaya Plus' for girls




sel

Palaniswami, Panneerselvam criticise DMK Government on Cauvery issue

Palaniswami urged the DMK Government to go to Delhi with 38 MPs of the DMK and its allies to stop attempts and prevent the proposal to construct a dam across the Cauvery at Mekedatu




sel

Chess | Vantika happy to have redeemed herself and aided in her team’s victory




sel

Democrat Marie Gluesenkamp Perez wins reelection in Washington’s closely watched 3rd District

First-term Democrat Marie Gluesenkamp Perez has won reelection in Washington state’s closely watched 3rd Congressional District




sel

Aghori’s self-immolation bid triggers tension in Srikalahasti

Aghori accuses the police of behaving rudely with her, forcing her to take the extreme step




sel

The application of a self-designed microfluidic lung chip in the assessment of different inhalable aerosols

Anal. Methods, 2024, 16,2111-2119
DOI: 10.1039/D4AY00017J, Paper
Zezhi Li, Xiang Li, Boyang Feng, Junwei Zhao, Kejian Liu, Fuwei Xie, Jianping Xie
Microfluidic-based assessment platforms have recently attracted considerable attention and have been widely used for evaluating in vitro toxic effects.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Diverse thermal desorption combined with self-aspirating corona discharge ionization for direct mass spectrometry analysis of complex samples

Anal. Methods, 2024, 16,2071-2076
DOI: 10.1039/D4AY00200H, Paper
Qinhao Shi, Xiaohua Yu, Shuang Sun, Weilong Wu, Wenyan Shi, Quan Yu
The thermal desorption (TD) technique is widely employed in modern mass spectrometry to facilitate the detection of non-volatile analytes.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

A screening method for the quantitative determination of selective androgen receptor modulators (SARMs) in capsules by high resolution 19F- and 1H-NMR spectroscopy

Anal. Methods, 2024, 16,2135-2146
DOI: 10.1039/D4AY00188E, Paper
Alessandro Maccelli, Anna Borioni, Federica Aureli, Maria Cristina Gaudiano, Livia Manna, Mariangela Raimondo
A new method for rapid determination of selective androgenic receptor modulators (SARMs) andarine, cardarine, ligandrol, ostarine and S-23 in capsules by 1H- and 19F-high resolution NMR spectroscopy was described and validated.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

The selective extraction of dietary polyamines from chicken breast using the application of a lab-on-a-chip electromembrane and dispersive liquid–liquid microextraction followed by gas chromatography-mass spectrometry

Anal. Methods, 2024, Advance Article
DOI: 10.1039/D3AY02172F, Paper
Fatemeh Barzegar, Samaneh Nabizadeh, Marzieh Kamankesh, Jahan B. Ghasemi, Abdorreza Mohammadi
Excessive dietary polyamines (PAs), including putrescine (PUT), spermine (SPM), and spermidine (SPD), have become a worldwide concern due to their carcinogenicity and reduced shelf life.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

A simple, fast and inexpensive approach to quantify low concentrations of iron in biodiesel by voltammetry after extraction induced by microemulsion breaking

Anal. Methods, 2024, Accepted Manuscript
DOI: 10.1039/D4AY00342J, Paper
Cristian Henrique Krause, Alexandre Batista Schneider, Leandro Kolling, Lauren Thauani Teixeira Oliveira, Márcia M. Silva
An alternative approach to assay iron (Fe) in biodiesel by differential pulse adsorptive cathodic stripping voltammetry (DPAdCSV) is presented herein. The sample treatment involved a simple, rapid, but effective extraction...
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

LAMP-based hydrogen ion selective electrochemical sensor for highly sensitive detection of Mycoplasma pneumoniae

Anal. Methods, 2024, Accepted Manuscript
DOI: 10.1039/D4AY00341A, Paper
Huiqing Wang, Yang Li, Lin Tian, Xinyi Li, Qian Gao, Yaru Liu, Cuiping Ma, Qing Wang, Chao Shi
An urgent need for a concise and rapid detection method for Mycoplasma pneumoniae is required due to its severe impact on human’s health. To meet such a need, this study...
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

A novel fluorescent probe with a large Stokes shift for colorimetric and selective detection of cysteine in water, milk, cucumber, pear and tomato

Anal. Methods, 2024, 16,2322-2329
DOI: 10.1039/D3AY02322B, Paper
Lin Luo, Ranran Guo, Lianjie Wang, Xixi Song, Zhao Wang, Junliang Wu
A novel fluorescent probe for colorimetric and selective detection of cysteine was efficiently constructed through a simple and mild reaction conditions. Probe 2 displays a linear response to Cys concentrations (0–30 μM), low detection limit (0.89 μM), large Stoke shift (125 nm).
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Construction of a stable fluorescent sensor based on CsPbBr3/CdS core/shell quantum dots for selective and sensitive detection of tetracycline in ethanol

Anal. Methods, 2024, 16,2267-2277
DOI: 10.1039/D4AY00032C, Paper
Yang He, Yangjie Li, Han Wang, Site Luo, Haihu Yu
Construction of a stable fluorescent sensor based on CsPbBr3/CdS core/shell quantum dots for selective and sensitive detection of tetracycline in ethanol via a mechanism integrating photoinduced electron transfer.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

A highly sensitive and selective fluorescent biosensor for breast cancer derived exosomes using click reaction of azide–CD63 aptamer and alkyne-polymer dots

Anal. Methods, 2024, Advance Article
DOI: 10.1039/D4AY00146J, Paper
Dumei Ma, Yiting Luo, Xiaoya Zhang, Zehu Xie, Yinghua Yan, Chuan-Fan Ding
A fluorescence method based on Cu-triggered click reaction of azide modified CD63 aptamer and alkyne capped Pdots was developed for breast cancer derived exosome detection.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

A reaction based carbazole–indolium conjugate probe for the selective detection of environmentally toxic ions

Anal. Methods, 2024, Advance Article
DOI: 10.1039/D4AY00301B, Paper
Jayasudha Palanisamy, Mansour K. Gatasheh, Ashraf Atef Hatamleh
Carbazole–indolium based colorimetric probe was designed for detecting cyanide ions in various water samples. An outstanding response was shown by paper test strips prepared using the probe for the easy detection of cyanide in real time.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

A highly selective probe engineered to detect polarity and distinguish normal cells and tumor cells in tissue sections

Anal. Methods, 2024, Advance Article
DOI: 10.1039/D4AY00438H, Paper
Sai Zhu, Lixuan Dai, Xiaoli Zhong, Weiying Lin
We have designed a polarity fluorescent probe (DCI-Cou-polar) with high selectivity for diagnosing cancer.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Novel benzenesulfonamides containing a dual triazole moiety with selective carbonic anhydrase inhibition and anticancer activity

RSC Med. Chem., 2024, Advance Article
DOI: 10.1039/D4MD00617H, Research Article
Aida Buza, Cüneyt Türkeş, Mustafa Arslan, Yeliz Demir, Busra Dincer, Arleta Rifati Nixha, Şükrü Beydemir
In this research, a series of sulfonamides incorporating a 1,2,3-triazolyloxime substituted 1,2,3-triazolyl moiety was conceptualized, synthesized, and investigated as carbonic anhydrase inhibitors.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

S-MGBs bearing amidine tail groups are potent, selective antiplasmodial agents

RSC Med. Chem., 2024, Advance Article
DOI: 10.1039/D4MD00619D, Research Article
Open Access
  This article is licensed under a Creative Commons Attribution 3.0 Unported Licence.
Marina Perieteanu, Tayner Rodriguez Garzon, Leah M. C. McGee, Abedawn I. Khalaf, Colin J. Suckling, Rebecca Beveridge, Vicky M. Avery, Fraser J. Scott
25 S-MGBs, including those bearing an amidine tail group, were investigated for their antiplasmodial, in vitro activity against 3D7 and Dd2 strains of P. falciparum. Several potent, and selective, hit compounds were identified.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Synthesis of cationic N-acylated thiazolidine for selective activity against Gram-positive bacteria and evaluation of N-acylation's role in membrane-disrupting activity

RSC Med. Chem., 2024, Advance Article
DOI: 10.1039/D4MD00626G, Research Article
Aleena Pious, Vignesh Venkatasubramanian, Dharshini Karnan Singaravelu, Subburethinam Ramesh, Fuad Ameen, Anbazhagan Veerappan
Lipidation modulates the Gram-selective antibacterial activity of QPyNATh.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Reuse greywater wisely

Treating greywater rather than transferring it to an STP has numerous benefits, says Indukanth Ragade




sel

Devotees throng Delhi ghats, mark Chhath Puja festivity with prayers, songs, selfies

Lakhs of devotees offer ‘Sandhya Arghya’ to the setting sun on the third day of the four-day festival; political leaders make a beeline for ghats with an eye on Purvanchali voters ahead of Assembly poll




sel

Centre to provide 15,000 women self help groups with drones that can be rented out for agricultural purposes

The scheme will help in infusing advanced technology in agriculture for improved efficiency, enhance crop yield and reduced cost of operation for the benefit of farmers




sel

The certainty trap [electronic resource] : why we need to question ourselves more--and how we can judge others less / Ilana Redstone ; foreword by Joe Walsh.

Durham, North Carolina : Pitchstone Publishing, [2024]




sel

Buttler Or Russell:Most Valuable Player?

Jos Buttler is still the front-runner to be this IPL's MVP.He still has at least two matches to play and one big knock will win it for him.Purnendu Maji and Srinivas Bhogle list Rediff.com's Most Valuable Players after the end of the 70 league matches in IPL 2022.




sel

RPG Life Sciences to sell biotech unit to Intas Pharma




sel

Forbes’s list of self-made American women has two with India connect




sel

Redington promoter sells over 5% stake

Redington promoter sells over 5%stake for Rs.219 crore




sel

Sensex, Nifty decline on selling in banking, financial stocks; weak global trends

The BSE Sensex tumbled 426.85 points or 0.53% to settle at 79,942.18. The NSE Nifty dropped 126 points or 0.51% to 24,340.85




sel

Sensex, Nifty decline on unabated foreign fund outflows, selling in IT stocks

Falling for the second day in a row, the BSE Sensex tumbled 553.12 points or 0.69% to settle at 79,389.06. During the day, it slumped 654.25 points or 0.81% to 79,287.93




sel

Sensex tanks 942 points; Nifty plunges below 24K on heavy selling in Reliance, banking shares

The 30-share BSE Sensex tumbled 941.88 points or 1.18% to settle at 78,782.24, the lowest closing level since August 6




sel

Self-assembly of amphiphilic homopolymers grafted onto spherical nanoparticles: complete embedded minimal surfaces and a machine learning algorithm for their recognition

Soft Matter, 2024, 20,8385-8394
DOI: 10.1039/D4SM00616J, Paper
D. A. Mitkovskiy, A. A. Lazutin, A. L. Talis, V. V. Vasilevskaya
Amphiphilic macromolecules grafted onto spherical nanoparticles can self-assemble into morphological structures corresponding to the family of complete embedded minimal surfaces. They arise situationally, can coexist and transform into each other.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Optimality and cooperativity in superselective surface binding by multivalent DNA nanostars

Soft Matter, 2024, 20,8515-8523
DOI: 10.1039/D4SM00704B, Paper
Open Access
  This article is licensed under a Creative Commons Attribution 3.0 Unported Licence.
Christine Linne, Eva Heemskerk, Jos W. Zwanikken, Daniela J. Kraft, Liedewij Laan
Our study shows that DNA nanostars with three binding sites (ligands) can (1) bind superselectively to surfaces based on receptor density, and (2) that interactions between ligands affect the optimum number of ligands required for superselectivity.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Retraction: Self-assembled organic nanotubes embedding hydrophobic molecules within solid bilayer membranes

Soft Matter, 2024, Advance Article
DOI: 10.1039/D4SM90171A, Retraction
Open Access
  This article is licensed under a Creative Commons Attribution 3.0 Unported Licence.
Naohiro Kameta, Masumi Asakawa, Mitsutoshi Masuda, Toshimi Shimizu
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Entropically and enthalpically driven self-assembly of a naphthalimide-based luminescent organic π-amphiphile in water

Soft Matter, 2024, 20,8684-8691
DOI: 10.1039/D4SM00986J, Paper
Sk Mursed Ali, Sujauddin Sk, Shuvajyoti Sarkar, Sayani Das, Nayim Sepay, Mijanur Rahaman Molla
Entropically and enthalpically favourable vesicular self-assembly of a naphthalimide based water soluble luminescent organic dipolar building block is reported.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Individual Closed-Loop Control of Micromotors by Selective Light Actuation

Soft Matter, 2024, Accepted Manuscript
DOI: 10.1039/D4SM00810C, Communication
Open Access
David Rivas, Max Sokolich, Sambeeta Das
Control of individual micromotors within a group would allow for improved efficiency, greater ability to accomplish complex tasks, higher throughput, and increased adaptability. However, independent control of micromotors remains a...
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Self-consistent electrostatic formalism of bulk electrolytes based on the asymmetric treatment of the short- and long-range ion interactions

Soft Matter, 2024, Advance Article
DOI: 10.1039/D4SM01174K, Paper
Sahin Buyukdagli
Internal energy of monovalent electrolytes (left) and dimensionless screening parameter of multivalent electrolytes (right).
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




sel

Making a Better Custom Select Element

Julie Grundy kicks off this, our fifteenth year, by diving headlong into the snowy issue of customising form inputs. Nothing makes a more special gift at Christmas that something you’ve designed and customised yourself. But can it be done while staying accessible to every user?


In my work as an accessibility consultant, there are some frequent problems I find on people’s websites. One that’s come up a lot recently is that people are making custom select inputs for their forms. I can tell that people are trying to make them accessible, because they’ve added ARIA attributes or visually-hidden instructions for screen reader users. Sometimes they use a plugin which claims to be accessible. And this is great, I love that folks want to do the right thing! But so far I’ve never come across a custom select input which actually meets all of the WCAG AA criteria.

Often I recommend to people that they use the native HTML select element instead. Yes, they’re super ugly, but as Scott Jehl shows us in his article Styling a Select Like It’s 2019 they are a lot easier to style than they used to be. They come with a lot of accessibility for free – they’re recognised and announced clearly by all screen reader software, they work reliably and predictably with keyboards and touch, and they look good in high contrast themes.

But sometimes, I can’t recommend the select input as a replacement. We want a way for someone to choose an item from a list of options, but it’s more complicated than just that. We want autocomplete options. We want to put images in there, not just text. The optgroup element is ugly, hard to style, and not announced by screen readers. The focus styles are low contrast. I had high hopes for the datalist element, but although it works well with screen readers, it’s no good for people with low vision who zoom or use high contrast themes.

Figure 1: a datalist zoomed in by 300%

Select inputs are limited in a lot of ways. They’re frustrating to work with when you have something which looks almost like what you want, but is too restricted to be useful. We know we can do better, so we make our own.

Let’s work out how to do that while keeping all the accessibility features of the original.

Semantic HTML

We’ll start with a solid, semantic HTML base. A select input is essentially a text input which restricts the possible answers, so let’s make a standard input.

<label for="custom-select">User Type</label>
<input type="text" id="custom-select">

Then we need to show everyone who can see that there are options available, so let’s add an image with an arrow, like the native element.

<label for="custom-select">User Type</label>
<input type="text" id="custom-select">
<img src="arrow-down.svg" alt="">

For this input, we’re going to use ARIA attributes to represent the information in the icon, so we’ll give it an empty alt attribute so screen readers don’t announce its filename.

Finally, we want a list of options. An unordered list element is a sensible choice here. It also lets screen reader software understand that these bits of text are related to each other as part of a group.

<ul class="custom-select-options">
  <li>User</li>
  <li>Author</li>
  <li>Editor</li>
  <li>Manager</li>
  <li>Administrator</li>
</ul>

You can dynamically add or remove options from this list whenever you need to. And, unlike our <option> element inside a <select>, we can add whatever we like inside the list item. So if you need images to distinguish between lots of very similar-named objects, or to add supplementary details, you can go right ahead. I’m going to add some extra text to mine, to help explain the differences between the choices.

This is a good base to begin with. But it looks nothing like a select input! We want to make sure our sighted users get something they’re familiar with and know how to use already.

Styling with CSS

I’ll add some basic styles similar to what’s in Scott Jehl’s article above.

We also need to make sure that people who customise their colours in high contrast modes can still tell what they’re looking at. After checking it in the default Windows high contrast theme, I’ve decided to add a left-hand border to the focus and hover styles, to make sure it’s clear which item is about to be chosen.

This would be a good time to add any dark-mode styles if that’s your jam. People who get migraines from bright screens will thank you!

JavaScript for behaviour

Of course, our custom select doesn’t actually do anything yet. We have a few tasks for it: to toggle the options list open and closed when we click the input, to filter the options when people type in the input, and for selecting an option to add it to the input and close the list. I’m going to tackle toggling first because it’s the easiest.

Toggling

Sometimes folks use opacity or height to hide content on screen, but that’s like using Harry Potter’s invisibility cloak. No-one can see what’s under there, but Harry doesn’t cease to exist and you can still poke him with a wand. In our case, screen reader and keyboard users can still reach an invisible list.

Instead of making the content see-through or smaller, I’m going to use display: none to hide the list. display: none removes the content from the accessibility tree, so it can’t be accessed by any user, not just people who can see. I always have a pair of utility classes for hiding things, as follows:

.hidden-all {
  display: none;
}

.hidden-visually {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    border: 0;
} 

So now I can just toggle the CSS class .hidden-all on my list whenever I like.

Browsing the options

Opening up our list works well for our mouse and touch-screen users. Our styles give a nice big tap target for touch, and mouse users can click wherever they like.

We need to make sure our keyboard users are taken care of though. Some of our sighted users will be relying on the keyboard if they have mobility or dexterity issues. Usually our screen reader users are in Browse mode, which lets them click the arrow keys to navigate through content. However, custom selects are usually inside form elements. which pushes screen reader software to Forms Mode. In Forms mode, the screen reader software can only reach focusable items when the user clicks the Tab key, unless we provide an alternative. Our list items are not focusable by default, so let’s work on that alternative.

To do this, I’m adding a tabindex of -1 to each list item. This way I can send focus to them with JavaScript, but they won’t be part of the normal keyboard focus path of the page.

csOptions.forEach(function(option) {
    option.setAttribute('tabindex, '-1')
}) 

Now I can move the focus using the Up and Down arrow keys, as well as with a mouse or tapping the screen. The activeElement property of the document is a way of finding where the keyboard focus is at the moment. I can use that to loop through the elements in the list and move the focus point forward or back, depending on which key is pressed.

function doKeyAction(whichKey) {
  const focusPoint = document.activeElement
  switch(whichKey) {
    case: 'ArrowDown':
      toggleList('Open')
      moveFocus(focusPoint, 'forward')
      break
    case: 'ArrowUp':
      toggleList('Open')
      moveFocus(focusPoint, 'back')
      break
  }
}

Selecting

The Enter key is traditional for activating an element, and we want to match the original select input.

We add another case to the keypress detector…

case 'Enter':
  makeChoice(focusPoint)
  toggleList('Shut')
  setState('closed')
  break 

… then make a function which grabs the currently focused item and puts it in our text input. Then we can close the list and move focus up to the input as well.

function makeChoice(whichOption) {
    const optionText = whichOption.documentQuerySelector('strong')
    csInput.value = optionText
}

Filtering

Standard select inputs have keyboard shortcuts – typing a letter will send focus to the first item in the option which begins with that letter. If you type the letter again, focus will move to the next option beginning with that letter.

This is useful, but there’s no clue to tell users how many options might be in this category, so they have to experiment to find out. We can make an improvement for our users by filtering to just the set of options which matches that letter or sequence of letters. Then sighted users can see exactly how many options they’ve got, and continue filtering by typing more if they like. (Our screen reader users can’t see the remaining options while they’re typing, but don’t worry – we’ll have a solution for them in the next section).

I’m going to use the .filter method to make a new array which only has the items which match the text value of the input. There are different ways you could do this part – my goal was to avoid having to use regex, but you should choose whatever method works best for your content.

function doFilter() {
  const terms = csInput.value
  const aFilteredOptions = aOptions.filter(option => {
    if (option.innerText.toUpperCase().startsWith(terms.toUpperCase())) {
    return true
    }
  })
  // hide all options
  csOptions.forEach(option => option.style.display = "none")
  // re-show the options which match our terms
  aFilteredOptions.forEach(function(option) {
    option.style.display = ""
  })
} 

Nice! This is now looking and behaving really well. We’ve got one more problem though – for a screen reader user, this is a jumble of information. What’s being reported to the browser’s accessibility API is that there’s an input followed by some clickable text. Are they related? Who knows! What happens if we start typing, or click one of the clicky text things? It’s a mystery when you can’t see what’s happening. But we can fix that.

ARIA

ARIA attributes don’t provide much in the way of additional features. Adding an aria-expanded='true' attribute doesn’t actually make anything expand. What ARIA does is provide information about what’s happening to the accessibility API, which can then pass it on to any assistive technology which asks for it.

The WCAG requirements tell us that when we’re making custom elements, we need to make sure that as a whole, the widget tells us its name, its role, and its current value. Both Chrome and Firefox reveal the accessibility tree in their dev tools, so you can check how any of your widgets will be reported.

We already have a name for our input – it comes from the label we associated to the text input right at the start. We don’t need to name every other part of the field, as that makes it seem like more than one input is present. We also don’t need to add a value, because when we select an item from the list, it’s added to the text input and therefore is exposed to the API.

Figure 2: How Firefox reports our custom select to assistive technology.

But our screen readers are going to announce this custom select widget as a text entry field, with some images and a list nearby.

The ARIA Authoring Practices site has a pattern for comboboxes with listboxes attached. It tells you all the ARIA you need to make screen reader software give a useful description of our custom widget.

I’m going to add all this ARIA via JavaScript, instead of putting it in the HTML. If my JavaScript doesn’t work for any reason, the input can still be a plain text field, and we don’t want screen readers to announce it as anything fancier than that.

csSelector.setAttribute('role', 'combobox') 
csSelector.setAttribute('aria-haspopup', 'listbox')
csSelector.setAttribute('aria-owns', '#list') 
csInput.setAttribute('aria-autocomplete', 'both')
csInput.setAttribute('aria-controls', 'list')

The next thing to do is let blind users know if the list is opened or closed. For that task I’m going to add an aria-expanded attribute to the group, and update it from false to true whenever the list changes state in our toggling function.

The final touch is to add a secret status message to the widget. We can use it to update the number of options available after we’ve filtered them by typing into the input. When there are a lot of options to choose from, this helps people who can’t see the list reducing know if they’re on the right track or not.

To do that we first have to give the status message a home in our HTML.

<div id='custom-select-status' class='hidden-visually' aria-live='polite'></div>

I’m using our visually-hidden style so that only screen readers will find it. I’m using aria-live so that it will be announced as often as it updates, not just when a screen reader user navigates past it. Live regions need to be present at page load, but we won’t have anything to say about the custom select then so we can leave it empty for now.

Next we add one line to our filtering function, to find the length of our current list.

updateStatus(aFilteredOptions.length)

Then we send that to a function which will update our live region.

function updateStatus(howMany) {
    console.log('updating status')
    csStatus.textContent = howMany + " options available."
}

Conclusion

Let’s review what we’ve done to make an awesome custom select input:

  • Used semantic HTML so that it’s easily interpreted by assistive technology while expanding the types of content we can include in it
  • Added CSS styles which are robust enough to survive different visual environments while also fitting into our branding needs
  • Used JavaScript to provide the basic functionality that the native element has
  • Added more JavaScript to get useful functionality that the native element lacks
  • Carefully added ARIA attributes to make sure that the purpose and results of using the element are available to assistive technology and are updated as the user interacts with it.

You can check out my custom select pattern on GitHub – I’ll be making additions as I test it on more assistive technology, and I welcome suggestions for improvements.

The ARIA pattern linked above has a variety of examples and customisations. I hope stepping through this example shows you why each of the requirements exists, and how you can make them fit your own needs.

I think the volume of custom select inputs out there shows the ways in which the native select input is insufficient for modern websites. You’ll be pleased to know that Greg Whitworth and Simon Pieters are working on improving several input types! You can let them know what features you’d like selects to have. But until that work pays off, let’s make our custom selects as accessible and robust as they can possibly be.


About the author

Julie Grundy is an accessibility expert who works for Intopia, a digital accessibility consultancy. She has over 15 years experience as a front-end web developer in the health and education sectors. She believes in the democratic web and aims to unlock digital worlds for as many people as possible. In her spare time, she knits very slowly and chases very quickly after her two whippets.

More articles by Julie




sel

A kickstart to self defence

There are ways to safeguard your physical and mental well being, say martial arts trainer Kyoshi K.S. Sekar and Krav Maga master S. Sreeram who will soon teach in Coimbatore




sel

Scoring a self goal

Inspired by the free flowing style of the Copa America and the Euro, NIKHIL VARMA decides to give football a try and realises that he is not up for the challenge




sel

Urban co-op banks’ body to facilitate buying and selling of priority sector loans

The National Urban Cooperative Finance and Development Corporation will help mid and small sized UCBs upgrade their technology architecture and ensure the sector’s money remains within the sector



  • Money &amp; Banking