CSS selector for other than the first child and last child

Solution 1:

Try:

#navigation ul li:not(:first-child):not(:last-child) {
  ...
}

Solution 2:

Sure it will work, you just have to use two 'not' selectors.

#navigation ul li:not(:first-child):not(:last-child) {

It will continue down the line after the first one, saying "not the first child" and "not the last child".