COAP 3120 01: Cascading Style Sheets
Webster University
George Herbert Walker School of Business & Technology
Dept. of Mathematics & Computer Science

Spring 2017
01: Tu–Th 10–11:20 a.m.
January 17–May 11 2017
East Academic Building 212, Webster Campus

On this page…

    Instructor: Scott Granneman

    You can also read my full CV.

    Course Description

    This course covers the styling of webpages as defined in the latest CSS specification. Students will develop style sheets in real-world exercises and master the skills to create effective style sheets for the Web.

    What You're Going to Learn

    Basically, advanced CSS techniques, including Flexbox & Responsive Web Design. And a lot of other, very cool stuff related to CSS as well.

    Learning Outcomes

    • Ability to implement an appropriate planning strategy for developing CSS for websites.
    • Ability to produce functional, flexible, & versatile style sheets for websites.
    • Ability to locate, evaluate, & critically assess current & emerging technologies for developing websites with CSS.
    • Possess a very good working knowledge of CSS and various techniques.
    • Understand how to use Bootstrap to create responsive websites.
    • Understand how to use Flexbox for simple & complex layouts of webpages.
    • Experience creating various small website projects.
    • An awareness of the process in creating a website & the various roles needed in that process.


    During most classes I will take a few minutes & discuss a mini-topic for 10 minutes or so. Some of these mini-topics include:

    • Snippets
    • Offline documentation
    • Regular Expressions (RegEx)
    • Simplenote
    • OpenDNS
    • Backing up
    • Password safes
    • RSS
    • The best help sites
    • Ebooks
    • Markdown
    • Wolfram Alpha
    • Cookies
    • LAMP (& WAMP & MAMP)
    • Git & GitHub
    • Portable Apps
    • Encoding email addresses
    • SEO
    • Finding multimedia
    • AJAX
    • Formatting & beautifying code
    • Minimizing code
    • WYSIWYG Web tools
    • Automating my Mac
    • Programming fonts
    • Using Word to make webpages
    • Pattern libraries
    • The WebSanity Toolkit
    • jQuery


    Course Materials

    There are no required books. Readings will consist of articles, analyses, & ephemera from the Internet. Virtually everything you need can be accessed via my website; however, when it's appropriate I will recommend books useful for further study & reference.

    OK, if you just have to kill a tree, I highly recommend Jon Duckett's HTML & CSS: Design and Build Websites. But it's not required.

    Jon Duckett’s JavaScript and JQuery: Interactive Front-End Web Development is also very good if you want to learn JavaScript.

    Communicate with Remind

    Email still has its uses, but it’s time for us to keep in touch outside of class with a more modern tool: messaging. I found a great free service called Remind that you can use either as an app on your iPhone or Android device, or via texting.

    You can download the app from the usual places:

    To join our course’s Remind group, you will need to get instructions from me during class.

    So what are we going to use Remind for?

    • A way for me to communicate with students in the class. If I need everyone to know something about the class (like I'm vomiting or trapped in a burning car, so I might be late), I’ll send it to Remind.
    • A way for me to share interesting readings with students. If I find an article that looks like something appropriate to this course, I’ll send it on via Remind. It’s just a suggestion for reading; it’s not required.
    • A way for you guys to communicate with me or other students. When you send an message to Remind, it goes to everyone. Do keep that in mind!


    Your grade will be based on the following factors:

    • Class attendance and participation (20%): You are expected to attend class prepared to learn and discuss the topics with your fellow classmates. We may also work on in-class exercises, and you are expected to take an active part in those exercises.
    • Projects (80%): We will practice HTML5 & CSS in & out of class with a series of assigned projects involving the use of these technologies. Think of them as open-book tests, since you will be allowed (heck, encouraged!) to use your class notes, websites, & any other resources you can access. IMPORTANT: You must either show me that you have completed a project within two weeks of its assignment date or asked me for an extension. Neglecting to do so will result in a failing grade for that project.

    Grades will be based on an average of the above as follows:

    100 A+
    94-99 A
    89-93 A-
    86-88 B+
    83-85 B
    79-82 B-
    76-78 C+
    73-75 C
    69-72 C-
    66-68 D+
    63-65 D
    59-62 D-
    0-58 F

    At any time you can ask me how you’re doing in the course & I will show you.

    How the Class Works

    This course is based around the idea of flipped teaching. Instead of coming to class to hear a lecture & then going home to do work, we’re going to flip that.

    I’ve made videos for most of the lectures in this course, & you will watch those at home. Some videos are 2 minutes long, while the longest is around 40 minutes; most are around 10 minutes or so. When we’re in class, I’ll review important or tricky stuff, answer questions, & walk around to help or grade your work.

    Note that all grading will be done by the two of us sitting together. I will never accept homework turned in via email or any other way that is not collaborative.

    If you want to show me some code that you’re confused about or need help with, please go to Pastebin, do the following, & then send me the URL:

    • Enter your code into the box
    • Set Syntax Highlighting to HTML or CSS
    • Set Paste Expiration to 1 week


    Accommodation of Disabilities

    Webster University is committed to providing accommodations and/or services to students with documented disabilities. If you have registered as a student with a documented disability and are entitled to classroom or testing accommodations, please inform me at the beginning of the course.

    Drops and Withdrawals

    The Drop/Add & Withdrawal dates are listed each semester on the University website, in the University catalog, & in the Course Description book. If the course is dropped within the Drop/Add period, no notation of the course will appear on the student’s transcript. Withdrawals that take place after the published Drop date will result in the dreaded “W” appearing on the student’s transcript.


    Some random student assignments or projects may be retained by the University for the purpose of academic assessment as it relates to student learning outcomes. In addition, I may keep some assignments to show future students. In those cases, the student’s name and all identifying information about the student will be removed from the assignment or project.

    Academic Integrity

    This course will follow Webster University’s policies concerning academic dishonesty. Academic dishonesty will result in failure for the assignment in question & referral to the appropriate individuals, who have discretion to impose a stricter penalty.

    While academic dishonesty includes cheating on exams and quizzes, it also includes plagiarism in written assignments. Plagiarism is not only passing off someone else’s work as your own, but also giving your work to someone else to pass off as their own. It also includes submitting work from another course. While I strongly encourage you to discuss your work with each other in and out of class, and while you may research issues together, your work should be your own.

    Any papers you submit must be your work alone, and must include citations to all references in your work. Please include the URL, or Web address, for articles and resources found on the Internet.

    If you have any questions about academic integrity, please bring them to me before you do anything that may jeopardize your grades, your education, & your future!


    I have no problem with students using a laptop, tablet, or smartphone during class for academic purposes; in fact, I would do the same thing. However, please do not use your personal device (or the computer on your desk) during class to conduct personal business such as Facebook, email, or IMing. This reduces your concentration & participation and distracts others around you. Repeated distractions will reduce your grade for the course. Please do what you need to do to keep cell phone distractions at a minimum.


    It is paramount that we respect each other in class & online. Follow this simple rule: disagree with the idea, but not the person. In other words, it’s OK to say “That’s a bad idea, because …”, and it’s not OK to say “You’re a bad/stupid/inconsiderate person, because …”.

    If you have an issue with a classmate’s behavior online, please bring it to me privately by emailing me at

    If you’d like to find out more, please feel free to read The Core Rules of Netiquette, by Virginia Shea.

    Tech Support

    Need my help diagnosing a problem you’re having remotely? Something won’t install, or won’t work?

    1. Download & install the free Jing, which works on both Mac OS X & Windows.
    2. Record what you’re seeing on your computer screen, up to a maximum of 5 minutes.
    3. Upload the resulting video to (also free).
    4. Send me a link to the video.

    In the email you send me, include the following information:

    1. What you did.
    2. What you thought should happen.
    3. What actually happened.
    4. Why that’s a problem.

    If you’re talking about a public webpage, don’t forget to include the URL!

    Tentative Schedule

    This course focuses on CSS techniques that professionals use every day to solve real-world problems. We will cover as many of the following as possible during this semester.

    • SCSS
    • Grid
    • Centering horizontally & vertically
    • Striped tables
    • Better data table UI
    • Negative margins
    • Version control with Git
    • Responsive tables
    • Media object layout
    • Full-page image backgrounds
    • Full-page video backgrounds
    • Parallax
    • Sticky headers
    • Fixed & “sticky” footers
    • Next/Prev
    • Typographic effects
    • Carousels
    • Overlays (AKA modal or lightbox)
    • Automated images after links
    • Accordian
    • Cards
    • Contrasting text against backgrounds
    • Cool borders & CSS counters
    • Multiple flowing text columns
    • Responsive Colors project
    • Agency
    • Facebook form
    • Thumbnail gallery
    • BEM
    • Alert Bar

    January 16, 2018

    Introduction & Review

    January 18, 2018

    Introduction & Review

    January 23, 2018


    CSS to SCSS Conversion

    January 25, 2018


    CSS to SCSS Conversion

    January 30, 2018


    CSS to SCSS Conversion

    February 1, 2018

    Centering Horizontally & Vertically

    February 6, 2018

    Striped Tables

    Negative Margins

    Version Control with Git

    February 8, 2018

    Version Control with Git

    February 13, 2018

    Version Control with Git

    February 15, 2018

    Version Control with Git

    Responsive Tables

    February 20, 2018

    Responsive Tables

    February 22, 2018

    Responsive Tables

    February 27, 2018

    Media Object Layout

    March 1, 2018

    Media Object Layout

    March 6, 2018

    Images, Audio, Video

    March 8, 2018

    List Tricks

    March 13, 2018

    Spring Break!

    March 15, 2018

    Spring Break!

    March 20, 2018

    Midterm: Portfolio Using Agency Bootstrap Theme

    March 22, 2018

    Midterm: Portfolio Using Agency Bootstrap Theme

    March 27, 2018

    Full-Page Backgrounds

    March 29, 2018

    Full-Page Backgrounds

    April 3, 2018

    Automated images after links

    April 5, 2018

    Automated images after links

    Alert bar

    Cool borders & counters

    April 10, 2018

    Something fun

    April 12, 2018

    Agency Bootstrap theme

    April 17, 2018

    Agency Bootstrap theme

    April 19, 2018


    You will need these images for this assignment.

    April 24, 2018

    Something fun

    April 26, 2018

    Something fun

    May 1, 2018

    Something fun

    May 3, 2018

    Something fun

    May 8, 2018


    May 10, 2018


    Please fill out this anonymous evaluation form that we will discuss in class.

    WebSanity Top Secret