Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

CSS Sass Basics (retired) Advanced Sass Concepts Interpolating and if/else

Marston Gould
seal-mask
.a{fill-rule:evenodd;}techdegree
Marston Gould
PHP Development Techdegree Student 17,314 Points

Sass Compile error on mixin

Working on last section of Sass and have been stumped on challenge:

Underneath the previous code, store the value "morning" in a variable named $time. Then write an if/else directive that will color all <a> tags. If the variable $time is equal to "morning", the color should be red. Otherwise, if the variable is "afternoon", the color should be blue. Finally, if the variable is set to anything else, the color should be gray.

The error I get is: Bummer! The color should be set to red

My entry:

@mixin cars($make, $color)
  {
    .#{$make} {
    border: 1px solid black;
    background-image: url("img/#{$color}.png");} }   

$time: morning;   

@mixin daytime($time) 
  { 
  @if $time == morning { a { color: red;} } 
  @else if $time == afternoon {a { color: blue;} } 
  @else { a { color: gray;} }
  }

I've run this through SassMeister and it appears to work.

1 Answer

Hi Marston,

You don't have to write a mixin for the last part. Also, the if/else directive should be nested inside the a block.

$time: morning;   

a {
  @if $time == morning { color: red;} 
  @else if $time == afternoon { color: blue; } 
  @else { color: gray; }
}