Github and Website Workshop/welcome-section
Welcome to Challenge 7 of the Github and Website Workshop - creating a welcome section
HTML
We will be using the <main> tag to encapsulate the website’s content (the content that changes page by page)
[image]
<body>
<header>
<!-- header component here -->
</header>
<main>
<!-- main component here -->
</main>
</body>
The goal is to create a section that will house a welcome message layered on top of a background image
<section id=”welcome”> will house the entire section, including the background image <div id=”welcome-text”> will house the welcome text layered on top of the background image
<main>
<section id="welcome">
<div id="welcome-text">
Hello, I'm [your name here]! Welcome to my little corner of the interwebs!
</div>
</section>
</main>
CSS
To get this section to resemble something like the above example, we need to tweak the CSS.
Since <header> is layered on top of the rest of the elements, we want <main> to appear below it. Right now, <main> be positioned at the top of the page.
Challenge: how we get <main> to be positioned right below <header>?
- Hint: use the height value you set for <header>
Let’s set a background image for section#welcome
- We should select an image that is larger width-wise than height-wise
- If you can’t decide on an image, check out lorempixel for some placeholder images!
section#welcome {
width: 100%;
height: [some fixed height];
background-image: url('[some url]');
background-position: center; /* Change this depending on how you want the image to be positioned */
}
We want to be able to position div#welcome-text with respect to section#welcome.
- We do this using “position: relative” and “position: absolute”
- We want to div#welcome-text to be positioned “relative” to section#welcome
- Therefore, section#welcome requires “position: relative” and div#welcome-text requires “position: absolute”
div#welcome-text {
width: 100%;
position: absolute;
text-align: center;
text-shadow: 2px 2px 2px #000000; /* Add shadow around the text so it is more visible against the background image */
}
Challenge: figure out how to center the text in the middle of the section
- Hint: use the top or bottom property
Save the changes and reload index.html. When you’re satisfied, commit and push the changes.