# HTML/CSS Questions, Resources, and Discussion (January 2018 Cohort)

**URL:** <https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704>\
**Category:** General\
**Created:** [January 4, 2018, 5:02am UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704 "2018-01-04T05:02:50Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![camper](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/camper/32/67027_2.png) [@camper](https://forum.freecodecamp.org/u/camper)\
**Post date:** [January 4, 2018, 5:02am UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/1 "2018-01-04T05:02:50Z")

</div>

Here’s the January 2018 fCC cohort [information and schedule](https://forum.freecodecamp.org/t/january-2018-fcc-cohort-starting-soon/165977).

This topic is for members of the [January 2018 fCC cohort](https://forum.freecodecamp.org/t/january-2018-fcc-cohort-starting-soon/165977) to share information and learn more about HTML and CSS. Click on the cohort link if you’d like to join. Reply here with your questions, comments, and additional resources regarding the [Basic HTML & HTML5](https://beta.freecodecamp.org/en/challenges/basic-html-and-html5/learn-how-freecodecamp-works) and [Basic CSS](https://beta.freecodecamp.org/en/challenges/basic-css/introduction-to-basic-css) sections.

## DEADLINE: 2018-01-09 23:59 PST (2018-01-10 04:59 UTC)

You can edit this post, like a wiki, to help keep things organized and add resources and other information you want to share with others.

## RESOURCES

- [HTML/CSS Best Coding Practices](http://learn.shayhowe.com/html-css/writing-your-best-code/)
- [Pure CSS Image Tutorial](https://coding-artist.teachable.com/p/how-to-make-pure-css-images)
- [CSS Diner](https://flukeout.github.io/)
- [CSS Zen Garden](http://www.csszengarden.com/)
- CSS cheat sheet - [https://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/d7fb67af-5180-463d-b58a-bfd4a220d5d0/css3-cheat-sheet.pdf](https://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/d7fb67af-5180-463d-b58a-bfd4a220d5d0/css3-cheat-sheet.pdf)
- HTML cheat sheet [https://websitesetup.org/html5-periodical-table/](https://websitesetup.org/html5-periodical-table/)

## MEMBERS

@camper, @mohamedeliwa, @Fixy250185, @firuzshoev, @mberkland, @Wahe3bru, @TammyKnox, @slamoureux, @zaynaib @angelinalblyth @LawGaming @Codewife101

**Members – bookmark this topic and make sure you’re “watching” the topic so you can participate in the discussion.**

![watching](https://global.discourse-cdn.com/freecodecamp/original/3X/1/e/1e9fd505c9d85033e157012231851cfdc2a1fec3.png)

**COHORT MEMBER GOAL:**  
For members of the cohort, try to reply with a resource you read/watched or something you learned about HTML and CSS **every day**!

---

<div class="post-metadata">

**Author:** ![angelinalblyth](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/angelinalblyth/32/76309_2.png) [@angelinalblyth](https://forum.freecodecamp.org/u/angelinalblyth)\
**Post date:** [January 4, 2018, 10:04am UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/3 "2018-01-04T10:04:58Z")

</div>

Are we ok to edit the post with links we have found useful? After I completed the CSS I then started searching for css images and found #dailycssimage on twitter which lead me to this [tutorial](https://coding-artist.teachable.com/p/how-to-make-pure-css-images) for creating pure CSS images. At the end of the tutorial you create a [Nintendo Switch](https://codepen.io/angelinalblyth/full/gGxBBQ/) which I really enjoyed creating.

---

<div class="post-metadata">

**Author:** ![firuzshoev](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/firuzshoev/32/176806_2.png) [@firuzshoev](https://forum.freecodecamp.org/u/firuzshoev)\
**Post date:** [January 4, 2018, 10:36am UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/4 "2018-01-04T10:36:57Z")

</div>

Thanks for sharing! Can you please fix your link to the tutorial though?

---

<div class="post-metadata">

**Author:** ![camper](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/camper/32/67027_2.png) [@camper](https://forum.freecodecamp.org/u/camper)\
**Post date:** [January 4, 2018, 1:41pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/5 "2018-01-04T13:41:20Z")

</div>

@angelinalblyth Yes, definitely! Please edit the first post and add any links you want to share. ☀

Also, I can access both of your links. That tutorial seems really great, thanks for sharing!

---

<div class="post-metadata">

**Author:** ![Fixy250185](https://avatars.discourse-cdn.com/v4/letter/f/ccd318/32.png) [@Fixy250185](https://forum.freecodecamp.org/u/Fixy250185)\
**Post date:** [January 4, 2018, 3:19pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/6 "2018-01-04T15:19:15Z")

</div>

When i was first starting out I found that Brad Traversy’s YouTube channel was a great source of information for a lot of aspects of web design/development.

- [HTML Crash Course](https://www.youtube.com/watch?v=UB1O30fR-EE)
- [CSS Crash Course](https://www.youtube.com/watch?v=yfoY53QXEnI)

---

<div class="post-metadata">

**Author:** ![nasef123](https://avatars.discourse-cdn.com/v4/letter/n/5f9b8f/32.png) [@nasef123](https://forum.freecodecamp.org/u/nasef123)\
**Post date:** [January 4, 2018, 7:29pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/7 "2018-01-04T19:29:00Z")

</div>

Would love to join this add me and we could code together 🙂

---

<div class="post-metadata">

**Author:** ![camper](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/camper/32/67027_2.png) [@camper](https://forum.freecodecamp.org/u/camper)\
**Post date:** [January 5, 2018, 2:36pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/8 "2018-01-05T14:36:56Z")

</div>

In regards to these two challenges ([1](https://beta.freecodecamp.org/en/challenges/basic-html-and-html5/say-hello-to-html-elements) | [2](https://beta.freecodecamp.org/en/challenges/basic-html-and-html5/headline-with-the-h2-element)):

Here’s some interesting information about heading elements from [Mozilla Developer Network (MDN)](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements).

> - Heading information may be used by user agents, for example, to construct a table of contents for a document automatically.
> 
> - Do not use lower levels to decrease heading font size: use the CSS `font-size` property instead.
> 
> - Avoid skipping heading levels: always start from `<h1>`, next use `<h2>` and so on.
> 
> - You should consider avoiding using `<h1>` more than once on a page. See “Defining sections” in Using HTML sections and outlines for more information.

When I review projects, I usually see people skipping heading levels because they’re using heading levels to style their elements. For example, one may try an `h2` element and realize that it adds some padding that they don’t want. Then they’ll try the `h3` element and that has less padding, so they’ll keep that in even though their heading hierarchy skips from `h1` to `h3`.

If you have a section that needs a heading and you don’t like the way it’s styled by the browser, you can always change the styling in your style.css file like this example:

```auto
h2 {
  padding: 0;
  margin: 0;
  font-size: 2rem;
}

/*You can use any CSS you want here.*/

```

That way, you’ll be able to maintain the heading hierarchy without skipping heading levels and get the styling you want! ☀

---

<div class="post-metadata">

**Author:** ![zaynaib](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/zaynaib/32/160441_2.png) [@zaynaib](https://forum.freecodecamp.org/u/zaynaib)\
**Post date:** [January 5, 2018, 6:24pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/11 "2018-01-05T18:24:24Z")

</div>

Thank you for sharing this! I’ve been trying to find resources on how to make css images for awhile now.  
 ![Alt Text](https://media.giphy.com/media/5wWf7GW1AzV6pF3MaVW/giphy.gif)

---

<div class="post-metadata">

**Author:** ![TammyKnox](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/tammyknox/32/75414_2.png) [@TammyKnox](https://forum.freecodecamp.org/u/TammyKnox)\
**Post date:** [January 6, 2018, 4:07am UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/12 "2018-01-06T04:07:48Z")

</div>

Hi everyone, I recently read this great article written by the brain behind Medium’s CSS. It was written a while ago but it is still pretty relevant. It’s a good reminder to think about the structure of your code: [Mediums CSS is Actually Pretty Fu\*\*\*\*\* Good](https://medium.com/@fat/mediums-css-is-actually-pretty-fucking-good-b8e2a6c78b06)

---

<div class="post-metadata">

**Author:** ![DGC75](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/dgc75/32/75121_2.png) [@DGC75](https://forum.freecodecamp.org/u/DGC75)\
**Post date:** [January 6, 2018, 6:31pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/13 "2018-01-06T18:31:47Z")

</div>

A note about the “Basic HTML and HTML5: Link to External Pages with Anchor Elements” challenge:

> **[Learn to code with free online courses, programming projects, and interview...](https://beta.freecodecamp.org/en/challenges/basic-html-and-html5/link-to-external-pages-with-anchor-elements)**
>
> Learn to code with free online courses, programming projects, and interview preparation for developer jobs.

  
It says: "a elements, also known as anchor elements, are used to link to content **outside** of the current page.[…]"  
That’s incorrect: an anchor element can link also on elements in the current page, by referring their ids.

---

<div class="post-metadata">

**Author:** ![firuzshoev](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/firuzshoev/32/176806_2.png) [@firuzshoev](https://forum.freecodecamp.org/u/firuzshoev)\
**Post date:** [January 6, 2018, 6:58pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/14 "2018-01-06T18:58:05Z")

</div>

You’re right, but I think it’s fine to represent anchors the way FCC did because you are presumably not familiar with ids at that point. Also, literally the next challenge explains how to link to internal sections.

---

<div class="post-metadata">

**Author:** ![HaiCia](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/haicia/32/75113_2.png) [@HaiCia](https://forum.freecodecamp.org/u/HaiCia)\
**Post date:** [January 6, 2018, 7:12pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/15 "2018-01-06T19:12:52Z")

</div>

Hi guys!,

I would love to join You! great idea!

---

<div class="post-metadata">

**Author:** ![johnhannahdev](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/johnhannahdev/32/75104_2.png) [@johnhannahdev](https://forum.freecodecamp.org/u/johnhannahdev)\
**Post date:** [January 6, 2018, 7:58pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/16 "2018-01-06T19:58:18Z")

</div>

Yes, anchors can do both …link outside the site or on the current page. The latter using id.  
🙂

---

<div class="post-metadata">

**Author:** ![camper](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/camper/32/67027_2.png) [@camper](https://forum.freecodecamp.org/u/camper)\
**Post date:** [January 6, 2018, 9:10pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/17 "2018-01-06T21:10:13Z")

</div>

Here’s some more information 📋 to look at in relation to the challenge on [HTML Elements](https://beta.freecodecamp.org/en/challenges/basic-html-and-html5/introduction-to-html5-elements):

- This is a video showing one developer’s process for [creating semantic HTML markup](https://css-tricks.com/video-screencasts/100-lets-write-semantic-markup/). I find this really helpful to watch from time to time as it is a great example of the process when I’m starting a new project.

- Here’s some information about the [`<main>` element](https://w3c.github.io/html/grouping-content.html#the-main-element). I particularly like the examples in that link as they show the correct placement of the `<main>` element in relation to the other HTML5 semantic elements.

- More information about [HTML5 sectioning elements](https://internetingishard.com/html-and-css/semantic-html/) with some helpful information and examples on how and when it’s best to use these elements.

In the project reviews I’ve done, I commonly see `<div class="header">` or `<div class="footer">`. Even though this is technically correct and it works, it’s not taking full advantage of the HTML5 semantic elements that are now available for all browsers. The links above, and the [freeCodeCamp challenge](https://beta.freecodecamp.org/en/challenges/basic-html-and-html5/introduction-to-html5-elements) will help us be as semantic as possible for our upcoming fCC projects! 🌱

---

<div class="post-metadata">

**Author:** ![angelinalblyth](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/angelinalblyth/32/76309_2.png) [@angelinalblyth](https://forum.freecodecamp.org/u/angelinalblyth)\
**Post date:** [January 7, 2018, 4:21pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/18 "2018-01-07T16:21:09Z")

</div>

How is everyone get on this week learning about HTML and CSS? I had already completed the beta courses for both but quickly went over them again and also looked at the links posted above. I found the CSS Diner really fun to complete.

---

<div class="post-metadata">

**Author:** ![camper](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/camper/32/67027_2.png) [@camper](https://forum.freecodecamp.org/u/camper)\
**Post date:** [January 7, 2018, 5:39pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/20 "2018-01-07T17:39:53Z")

</div>

@angelinalblyth 🏇 Thanks for checking in! I really appreciate you making yourself available to help us like this. 💛 I’m done with both sections, but that’s mostly because I know most of it already from the previous fCC cohort and from other sources. All of the links shared so far have been great!

I, too, am curious to know what others found helpful so far and if anyone needs help with anything.

CSS Diner **IS** awesome! ☀

What I didn’t get from CSS Diner, however, was best practices in terms of using those selectors in projects. ☢ It’s one thing to be able to do something and another thing entirely to know when and when not to do it!

Here are two sources that I reference often to help remind myself of CSS best practices (at least, according to some developers):

[https://csswizardry.com/2012/05/keep-your-css-selectors-short/](https://csswizardry.com/2012/05/keep-your-css-selectors-short/):

> Another way to increase portability is to not qualify selectors. A qualified selector is one like `ul.nav {}` or `a.button {}` or `div.content {}`.
> 
> Qualified selectors are bad because they reduce efficiency (more checks than we really need) but—more importantly—because they tie us to specific elements. We can’t now use that `.button` class on an `<input>` or a `<button>`, for example. We can’t apply `.nav` to an `<ol>` to make a breadcrumb.

[https://csswizardry.com/2014/07/hacks-for-dealing-with-specificity/](https://csswizardry.com/2014/07/hacks-for-dealing-with-specificity/):

> … there are a number of things we can do to mitigate [the effects of specificty]:
> 
> - **Never use IDs in CSS** , ever. They have no advantage over classes (anything you can do with an ID, you can do with a class), they cannot be reused, and their specificity is way, way too high. Even an infinite number of chained classes will not trump the specificity of one ID.
> 
> - **Do not nest selectors** unnecessarily. If `.header-nav {}` will work, never use `.header .header-nav {};` to do so will literally double the specificity of the selector without any benefit.
> 
> - **Do not qualify selectors** unless you have a compelling reason to do so. If `.nav {}` will work, do not use `ul.nav {};` to do so would not only limit the places you can use the `.nav` class, but it also increases the specificity of the selector, again, with no real gain.
> 
> - **Make heavy use of classes** because they are the ideal selector: low specificity (or rather, all classes have the same specificity, so you have a level playing field), great portability, and high reusability.
> 
> **tl;dr** never use a selector more specific than the one you need.

---

<div class="post-metadata">

**Author:** ![arhillis](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/arhillis/32/158968_2.png) [@arhillis](https://forum.freecodecamp.org/u/arhillis)\
**Post date:** [January 7, 2018, 6:16pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/21 "2018-01-07T18:16:02Z")

</div>

This looks like a really great resource. Thanks for sharing!

---

<div class="post-metadata">

**Author:** ![slamoureux](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/slamoureux/32/131736_2.png) [@slamoureux](https://forum.freecodecamp.org/u/slamoureux)\
**Post date:** [January 7, 2018, 7:44pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/22 "2018-01-07T19:44:29Z")

</div>

I thought it was weird that they make you use ids in the responsive design projects…

---

<div class="post-metadata">

**Author:** ![dmac0505](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/dmac0505/32/75147_2.png) [@dmac0505](https://forum.freecodecamp.org/u/dmac0505)\
**Post date:** [January 8, 2018, 1:30am UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/23 "2018-01-08T01:30:46Z")

</div>

I had already gone through the HTML and CSS sections on the current curriculum, but I’m not too proud to get some review with the beta - plus I believe there are some differences between them too 🙂 I am enjoying the resources that were posted in this thread and I must say that I enjoyed the CSS Diner as well - its just fun when learning is like playing a game 🙂

---

<div class="post-metadata">

**Author:** ![johnhannahdev](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/johnhannahdev/32/75104_2.png) [@johnhannahdev](https://forum.freecodecamp.org/u/johnhannahdev)\
**Post date:** [January 8, 2018, 2:46pm UTC](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704/24 "2018-01-08T14:46:06Z")

</div>

I’m on Applied Visual Design: Use the CSS Transform scale Property to Scale an Element on Hover.

I got stuck and went a googling.  
Just thought I’d add something I found.

[CSS Transitions and Transforms for Beginners](https://robots.thoughtbot.com/transitions-and-transforms)

[Next page](https://forum.freecodecamp.org/t/html-css-questions-resources-and-discussion-january-2018-cohort/166704.md?page=2)
