Coder Social home page Coder Social logo

friendbook's Introduction

Friendbook

In this project, we will create our very first HTML page; a profile of ourselves. In the end, we'll work our way up to something that looks like this target.

Structure with HTML

Raw Content

We'll start by getting the raw content into the page, and ignore styling for now. Our first target is something that looks like this target.

  1. Create your own page called [first name]-[last-initial].html (for example, I called mine raghu-b.html).
  2. Type in your own content:
  • Your name
  • Where you're from
  • Some of your app ideas
  • Some of your prior experience (jobs, education), and your LinkedIn URL
  • A favorite nearby haunt (coffee shop or restaurant or pub)

Add Semantic Markup

Next, let's tag our content to let the browser know what each thing is. Useful HTML elements include:

  • Headings: <h1>, <h2>, ... , <h6>
  • Paragraph: <p>
  • Unordered list: <ul>
  • Ordered list: <ol>
  • List item: <li>
  • Link: <a href="http://www.addressofsomepage.com/whatever">

Add Images

Let's add some images to the page:

  • A profile photo (you can grab a fake one from UIFaces)
  • A cover photo (you can grab a stock one from Stock Up)
  • A few of your photos (you can grab fakes ones from Stock Up)

After you download your images, name them similarly to what you called your HTML file:

  • [first name]-[last-initial]-profile.jpg
  • [first name]-[last-initial]-cover.png
  • [first name]-[last-initial]-1.png
  • [first name]-[last-initial]-2.jpg
  • [first name]-[last-initial]-3.png
  • [first name]-[last-initial]-4.jpg

Then, add them into your document using the img tag:

  /* An image located in the same folder as this document */
  <img src="whatever.jpg">

  /* An image located somewhere on the Internet */
  <img src="http://somewhere.com/whatever.jpg">

Tables

Let's put your experience data into a table. In HTML, the <table> element is used to represent two dimensional data. A simple table looks like this:

<table>
  <tr>
    <th>First</th>
    <th>Last</th>
  </tr>
  <tr>
    <td>John</td>
    <td>Doe</td>
  </tr>
  <tr>
    <td>Jane</td>
    <td>Doe</td>
  </tr>
</table>

which would produce this:

First Last
John Doe
Jane Doe

The things to keep in mind about tables are:

  • Every piece of data must reside within a cell, a <td> element (or maybe a <th> element if it's a heading).
  • Every <td> or <th> element must reside within a row, a <tr> element.
  • Every <tr> must have the same number of cells, or things get out of whack.

Despite this last rule, you can, however, "merge" cells using the colspan attribute:

<table>
  <tr>
    <th colspan="2">People</th>
  </tr>
  <tr>
    <td>John</td>
    <td>Doe</td>
  </tr>
  <tr>
    <td>Jane</td>
    <td>Doe</td>
  </tr>
</table>

produces:

People
John Doe
Jane Doe

You can see that we've merged two cells in the first row together; the colspan="2" on the first cell ensures that we don't violate the "every <tr> must have the same number of cells" rule.

Your task: Try to create a "What I've Done" section similar to the one you see here.

Embedding Objects

Styling with CSS

Now that we have our content showing up, and we've added some basic structure with HTML, it's time to customize the styling of the page.

The basic syntax of CSS looks like this:

<h1 class="greeting">Hi there</h1>

<style>
  .greeting {
    font-size: 24px;
    color: darkgrey;
  }
</style>

The rest is just practice, and expanding our vocabulary of what CSS properties are available to us.

Below are some resources that might be helpful as we go along:

  • Google Web Fonts

  • Google Web Font showcases: Beautiful Web Type and Typographic Project

  • Hero unit with cover image:

     .top-cover {
       background: url("cover.jpg") no-repeat center bottom;
       background-size: cover;
       height: 300px;
     }
    
  • Material-Design-style box shadow:

     .some-thing {
       box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
       transition: all 0.2s ease-in-out;
     }
    
     .some-thing:hover {
       box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
     }
    
  • HTML5 Element List

  • An abbreviated list of other useful CSS properties and example values:

     /* Typography */
    
     color: orange;
     font-family: 'Playfair Display', serif;
     font-size: 18px;
     font-weight: bold;
     letter-spacing: 0.4em;
     line-height: 1.86;
     text-align: center;
     text-decoration: none;
     text-transform: uppercase;
    
     /* Box Model */
    
     border-color: rgb(240, 240, 240);
     border-style: solid;
     border-width: 5px;
     border: thick white solid;
     height: 200px;
     margin: auto;
     padding-bottom: 20px;
     padding-left: 20px;
     padding-right: 20px;
     padding: 20px;
     width: 100%;
    
     /* Table */
    
     border-spacing: 10px;
     vertical-align: top;
    
      /* Other */
    
     background-color: rgba(0, 0, 0, 0.5)
     box-shadow: 0 1px 3px rgba(0,0,0,0.12);
     list-style-type: square;
    

friendbook's People

Contributors

atandon0 avatar ddedde avatar raghubetina avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.