Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
183 changes: 24 additions & 159 deletions amazon.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,34 +6,38 @@
<!-- This code is needed for responsive design to work.
(Responsive design = make the website look good on
smaller screen sizes like a phone or a tablet). -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="viewport" content="width=device-width, initial-scale=1" />

<!-- Load a font called Roboto from Google Fonts. -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap"
rel="stylesheet"
/>

<!-- Here are the CSS files for this page. -->
<link rel="stylesheet" href="styles/shared/general.css">
<link rel="stylesheet" href="styles/shared/amazon-header.css">
<link rel="stylesheet" href="styles/pages/amazon.css">
<link rel="stylesheet" href="styles/shared/general.css" />
<link rel="stylesheet" href="styles/shared/amazon-header.css" />
<link rel="stylesheet" href="styles/pages/amazon.css" />
</head>
<body>
<div class="amazon-header">
<div class="amazon-header-left-section">
<a href="amazon.html" class="header-link">
<img class="amazon-logo"
src="images/amazon-logo-white.png">
<img class="amazon-mobile-logo"
src="images/amazon-mobile-logo-white.png">
<img class="amazon-logo" src="images/amazon-logo-white.png" />
<img
class="amazon-mobile-logo"
src="images/amazon-mobile-logo-white.png"
/>
</a>
</div>

<div class="amazon-header-middle-section">
<input class="search-bar" type="text" placeholder="Search">
<input class="search-bar" type="text" placeholder="Search" />

<button class="search-button">
<img class="search-icon" src="images/icons/search-icon.png">
<img class="search-icon" src="images/icons/search-icon.png" />
</button>
</div>

Expand All @@ -44,162 +48,23 @@
</a>

<a class="cart-link header-link" href="checkout.html">
<img class="cart-icon" src="images/icons/cart-icon.png">
<img class="cart-icon" src="images/icons/cart-icon.png" />
<div class="cart-quantity">3</div>
<div class="cart-text">Cart</div>
</a>
</div>
</div>

<div class="main">
<div class="products-grid">
<div class="product-container">
<div class="product-image-container">
<img class="product-image"
src="images/products/athletic-cotton-socks-6-pairs.jpg">
</div>

<div class="product-name limit-text-to-2-lines">
Black and Gray Athletic Cotton Socks - 6 Pairs
</div>

<div class="product-rating-container">
<img class="product-rating-stars"
src="images/ratings/rating-45.png">
<div class="product-rating-count link-primary">
87
</div>
</div>

<div class="product-price">
$10.90
</div>

<div class="product-quantity-container">
<select>
<option selected value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</div>

<div class="product-spacer"></div>

<div class="added-to-cart">
<img src="images/icons/checkmark.png">
Added
</div>

<button class="add-to-cart-button button-primary">
Add to Cart
</button>
</div>

<div class="product-container">
<div class="product-image-container">
<img class="product-image"
src="images/products/intermediate-composite-basketball.jpg">
</div>

<div class="product-name limit-text-to-2-lines">
Intermediate Size Basketball
</div>

<div class="product-rating-container">
<img class="product-rating-stars"
src="images/ratings/rating-40.png">
<div class="product-rating-count link-primary">
127
</div>
</div>

<div class="product-price">
$20.95
</div>

<div class="product-quantity-container">
<select>
<option selected value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</div>

<div class="product-spacer"></div>

<div class="added-to-cart">
<img src="images/icons/checkmark.png">
Added
</div>

<button class="add-to-cart-button button-primary">
Add to Cart
</button>
</div>

<div class="product-container">
<div class="product-image-container">
<img class="product-image"
src="images/products/adults-plain-cotton-tshirt-2-pack-teal.jpg">
</div>

<div class="product-name limit-text-to-2-lines">
Adults Plain Cotton T-Shirt - 2 Pack
</div>

<div class="product-rating-container">
<img class="product-rating-stars"
src="images/ratings/rating-45.png">
<div class="product-rating-count link-primary">
56
</div>
</div>

<div class="product-price">
$7.99
</div>

<div class="product-quantity-container">
<select>
<option selected value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</div>

<div class="product-spacer"></div>
<div class="main">
<div class="products-grid js-products-grid">


<div class="added-to-cart">
<img src="images/icons/checkmark.png">
Added
</div>


<button class="add-to-cart-button button-primary">
Add to Cart
</button>

</div>
</div>
</div>
<script src="scripts/amazon.js"></script>
</body>
</html>
85 changes: 85 additions & 0 deletions scripts/amazon.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
const products = [
{
image: "images/products/athletic-cotton-socks-6-pairs.jpg",
name: "Athletic Cotton Socks (6 Pairs)",
rating: {
stars: 4.5,
count: 87,
},
priceCents: 1090,
},
{
image: "images/products/intermediate-composite-basketball.jpg",
name: "Intermediate Size Basketball",
rating: {
stars: 4,
count: 127,
},
priceCents: 2095,
},
{
image: "images/products/adults-plain-cotton-tshirt-2-pack-teal.jpg",
name: "Adults Plain Cotton T-Shirt - 2 Pack",
rating: {
stars: 4.5,
count: 56,
},
priceCents: 799,
},
];

let productsHTML = "";

products.forEach((product) => {
productsHTML = productsHTML += `
<div class="product-container">
<div class="product-image-container">
<img
class="product-image"
src="${product.image}"
/>
</div>

<div class="product-name limit-text-to-2-lines">
${product.name}
</div>

<div class="product-rating-container">
<img
class="product-rating-stars"
src="images/ratings/rating-${product.rating.stars * 10}.png"
/>
<div class="product-rating-count link-primary">${
product.rating.count
}</div>
</div>

<div class="product-price">$${(product.priceCents / 100).toFixed(
2
)}</div>
<div class="product-quantity-container">
<select>
<option selected value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</div>

<div class="product-spacer"></div>

<div class="added-to-cart">
<img src="images/icons/checkmark.png" />
Added
</div>

<button class="add-to-cart-button button-primary">Add to Cart</button></div>`;
});

document.querySelector(".js-products-grid").innerHTML = productsHTML;