Giter VIP home page Giter VIP logo

hfolcot.github.io's Introduction

The Monkees Website by Heather Olcot

The website is required for a 1960s band who wish to showcase themselves, their work, pictures and a video, and also give their fans a method of contacting them to book performances at events.

The website fulfils this need with four pages:

index.html

The home page gives dates of upcoming public performances and shows pictures of the band. It also offers links to the band's social media pages.

about.html

The About page gives information about each individual band member.

music.html

The Music page offers fans a video of one of their performances, as well as a menu where a song can be chosen and played.

contact.html

The Contact page contains a form that can be filled in and submitted to the band to request a performance at an event.

Functionality / Technologies

General

The site links to Bootstrap 3.3.7 and makes use of its form styling and grid system.

The site links to Fontawesome 4.7.0 and makes use of icons for the social media and other links in the footer.

The site uses the Vesper Libre font from Google Fonts.

My own further styling has been done within css/styles.css

The colour scheme was created using https://coolors.co. The entire site only uses five colours outside of the images. These are: #fffcf2 #595f72 #e3e3e3 #898989 and #5da271.

Header and Footer

The Bootstrap grid system was utilised for the grids making up the header and footer.

The header contains one of the supplied images which is being used as a logo. Clicking/tapping on this logo will take the user to the homepage - functionality that the average user has come to expect from a website.

The links in both header and footer have been amended so that they transition to a darker colour when they are hovered over.

The header is designed to compress into two rows of two links each with no logo and no padding at less than 768px width. The logo is replaced by the band's name beneath the header on all pages so the site's purpose can still be easily identified by the user.

The footer will show only icons and no text at less than 768px width, to prevent cluttering of a smaller screen.

index.html

The main feature of the Home page is the showcase of pictures which are offered as a type of slideshow. This was achieved using keyframes animations with multiple steps, each step being one picture. These keyframes have been repeated with prefixes in styles.css to allow for functionality within different browsers. In an earlier version the keyframes code was much simpler and relied on changing the background of a div every few seconds. However, on testing I discovered this was not compatible with Microsoft Edge/Internet Explorer and so it has been rewritten. Each image now has its own keyframe meaning that the code in styles.css is much longer. Ultimately an animation like this would be much more efficiently produced using JavaScript, however in this instance I wanted to use pure CSS as using JS would have required an external source writing the code for me.

The page should also draw the user's attention to the ability to book the band with a button (Book Us) under the picture slideshow. This button will take the user directly to contact.html. It has made use of the bootstrap styling (btn btn-primary) but with a change of colour to fit in with the colour scheme and draw the user's attention.

Next we have a basic bordered div containing details of the band's next public performance dates.

And finally there are social media icons which take the user to the relevant external websites in a separate browser tab.

about.html

This page contains four separate bordered divs, each containing an unordered list of interesting trivia about each band member.

On a screen smaller than 992px, each band member will be displayed one per row. On a larger screen, they are shown two per row.

music.html

This is the page where the band are able to showcase their music in the form of a video and four audio files.

The video uses html5 video controls and has a message in place for when this function is not supported. "Your browser does not support this video".

The video will shrink according to the screen width below 768px, this was achieved using a media query.

The song selection dropdown will take the user to a separate browser tab which plays the selected file. A separate browser tab was preferable otherwise there would have been no option to navigate back to the site without using the browser's back button.

The code for the dropdown box was taken from vvolkov's answer at https://stackoverflow.com/questions/14242466/creating-a-form-which-selects-a-downloadable-file?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa and edited to work with the page's data.

The Play button again uses Bootstrap css for styling but with an edited colour for the main button and the hover function in styles.css, to fit in with the site's colour scheme.

contact.html

The form contains fields to enter Name, Email, Phone Number, Date of Event and Comments.

The name, email and phone number are required fields but the date is not, acknowledging that the user may not have a specific date in mind yet. The comments box is also not enforced as required - it is limited to 1000 characters and the placeholder advises such. This was all achieved with the html code.

The styling of the form is done by Bootstrap except for margin, width and padding which are specified in styles.css. The form is set with media queries to fill 80% of the screen up to 768px and 40% of any larger screen widths, to maintain an easy to follow layout.

The text above the contact form was styled using IDs rather than classes to avoid their styles being unintentionally repeated elsewhere in the site.

The Submit button is styled with Bootstrap css for styling but with an edited colour for the main button and the hover function in styles.css, to fit in with the site's colour scheme.

The form uses the Post method but is not currently connected to a back end.

Testing (Round 1)

The site was tested on a Safari browser on a Macbook by another user who found it easy to use and navigate, and that all functions behaved as expected.

I then tested the following:

(X = Functioning as expected)

Browser/Test Opera Firefox Chrome Edge Safari
Display About page has large gap below footer. All other pages OK About page has large gap below footer. All other pages OK About page has large gap below footer. All other pages OK About page has large gap below footer. All other pages OK X
Slideshow X X X Does not work X
Contact form X X X X X
All links X X X X X
:hover functions X X X X X
Video X X X X X
Dropdown Box X X X X X
Play button X Goes to expected page but error stating supported format not found X Goes to expected page but states that audio files isn't supported Goes to expected page but states that audio files isn't supported
Submit button X X X X 405 not allowed error

Using Chrome's dev tools to test each page is displaying correctly at different screen widths

Screen width/Page display Galaxy S5 Pixel 2 Pixel 2XL iPhone 5/SE iPhone 6/7/8 iPhone 6/7/8 Plus iPhone X iPad iPad Pro
index.html X X Large gap below footer X X X Large gap below footer Large gap below footer Page is only half the vh
about.html X X X X X X X Large gap below footer Page is only half the vh
music.html X Small gap below footer Large gap below footer X X Large gap below footer Large gap below footer X Page is only half the vh
contact.html X X X X X X X X Page is only half the vh

Testing (Round 2)

I have resolved the issues presented in the first round of testing.

I have also run all pages and the stylesheet through the W3C validators and they are free of errors except one for the contact form as the action is blank. This is an expected result as the form is not connected.

(X = Functioning as expected)

Browser/Test Opera Firefox Chrome Edge Safari
Display X X X X X
Slideshow X X X X X
Contact form X X X X X
All links X X X X X
:hover functions X X X X X
Video X X X X X
Dropdown Box X X X X X
Play button X X X X X
Submit button X X X X X

Using Chrome's dev tools to test each page is displaying correctly at different screen widths (Portrait and Landscape modes have both been tested)

Screen width/Page display Galaxy S5 Pixel 2 Pixel 2XL iPhone 5/SE iPhone 6/7/8 iPhone 6/7/8 Plus iPhone X iPad iPad Pro
index.html X X X X X X X X X
about.html X X X X X X X X X
music.html X X X X X X X X X
contact.html X X X X X X X X X

The project has been written in cloud9 and committed to git at each stage of functionality.

The site is now live at https://hfolcot.github.io.

hfolcot.github.io's People

Contributors

hfolcot 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.