Question: I am currently developing an application for my Class Routine and it changes periodically in a 3-4 weeks.I have an application with local index files inside assets folder of an application. So I am looking for any suggestion to update only assets folder such that if Routine changes user can easily update the new Routine ( i.e content of assets folder only ) without the need to update the whole application. 
Thanks in advance.

Answer: 
You can use the CSS third-party ***axe*** library for this.

Here are two examples:

Select Next Sibling of Ancestor Element:
========================================

**Using `^` (select ancestor) and `+` (select next sibling)**

```css
.dropdown {
display: none;
}

.shows:hover ^ .navmenu + .dropdown {
display: block;
}
```

```html
<ul class="navmenu">
  <li><a href="#">HOME</a></li>
  <li><a href="#" class="shows">SEASON</a></li>
  <li><a href="#">ABOUT</a></li>
  <li><a href="#">CONTACT</a></li>
</ul>

<ul class="dropdown">
  <li><a href="#">SHOWS</a></li>
  <li><a href="#">EVENTS</a></li>
</ul>

<script src="https://rouninmedia.github.io/axe/axe.js"></script>
```

Select Remote Element:
======================

**Using `\` (select remote element)**

```css
.dropdown {
display: none;
}

.shows:hover \ .dropdown {
display: block;
}
```

```html
<ul class="navmenu">
  <li><a href="#">HOME</a></li>
  <li><a href="#" class="shows">SEASON</a></li>
  <li><a href="#">ABOUT</a></li>
  <li><a href="#">CONTACT</a></li>
</ul>

<ul class="dropdown">
  <li><a href="#">SHOWS</a></li>
  <li><a href="#">EVENTS</a></li>
</ul>

<script src="https://rouninmedia.github.io/axe/axe.js"></script>
```

---

**Further Reading on *axe* Selectors:**

<http://www.rounin.co.uk/projects/axe/axe2.html>
It would work **only** with sibbling elements that are **next** in the flow.

You could use a `<nav>` and plain `<a>` restyled as list items (`<li>`) to keep a coherent HTML5 structure that can also do the desired styling effect :

```css
.dropdown {
  display: none;
}

.shows:hover~.dropdown {
  display: block;
}
/* make those <a> look like <li>s resetting major default li rules */
.navmenu>a {
  display: list-item;
  margin-left: 2em;
}
```

```html
<nav class="navmenu">
  <a href="#">HOME</a>
  <a href="#" class="shows">SEASON</a>
  <a href="#">ABOUT</a>
  <a href="#">CONTACT</a>
  <ul class="dropdown">
    <li><a href="#">SHOWS</a></li>
    <li><a href="#">EVENTS</a></li>
  </ul>
</nav>
```

use `~` instead `+` since element to show is not right after but somwhere after.