diff options
author | Mark Otto <markd.otto@gmail.com> | 2018-04-09 19:00:23 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-09 19:00:23 +0300 |
commit | 8f7bd419935adfcd53c471a0202083464800619e (patch) | |
tree | d0e6ab018a0f41b59a1206cf72ffc79a474e69b9 /docs/4.1/examples/checkout | |
parent | 91730a644f107ca80a747a6f7f0c173eca5708fa (diff) |
Ship v4.1.0 (#26218)v4.1.0
* update docs path from docs/4.0/ to docs/4.1/
* bump version to 4.1.0
* Update redirects to work for 4.1 docs move
* Update docs version switcher to include latest and link to 4.0 docs
* re-run dist
* Update package-lock.json
* Update docs-navbar.html
Diffstat (limited to 'docs/4.1/examples/checkout')
-rw-r--r-- | docs/4.1/examples/checkout/form-validation.css | 11 | ||||
-rw-r--r-- | docs/4.1/examples/checkout/index.html | 268 |
2 files changed, 279 insertions, 0 deletions
diff --git a/docs/4.1/examples/checkout/form-validation.css b/docs/4.1/examples/checkout/form-validation.css new file mode 100644 index 0000000000..fd88d5a403 --- /dev/null +++ b/docs/4.1/examples/checkout/form-validation.css @@ -0,0 +1,11 @@ +.container { + max-width: 960px; +} + +.border-top { border-top: 1px solid #e5e5e5; } +.border-bottom { border-bottom: 1px solid #e5e5e5; } +.border-top-gray { border-top-color: #adb5bd; } + +.box-shadow { box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05); } + +.lh-condensed { line-height: 1.25; } diff --git a/docs/4.1/examples/checkout/index.html b/docs/4.1/examples/checkout/index.html new file mode 100644 index 0000000000..d8e5eafcbe --- /dev/null +++ b/docs/4.1/examples/checkout/index.html @@ -0,0 +1,268 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <meta name="description" content=""> + <meta name="author" content=""> + <link rel="icon" href="../../../../favicon.ico"> + + <title>Checkout example for Bootstrap</title> + + <!-- Bootstrap core CSS --> + <link href="../../../../dist/css/bootstrap.min.css" rel="stylesheet"> + + <!-- Custom styles for this template --> + <link href="form-validation.css" rel="stylesheet"> + </head> + + <body class="bg-light"> + + <div class="container"> + <div class="py-5 text-center"> + <img class="d-block mx-auto mb-4" src="https://getbootstrap.com/assets/brand/bootstrap-solid.svg" alt="" width="72" height="72"> + <h2>Checkout form</h2> + <p class="lead">Below is an example form built entirely with Bootstrap's form controls. Each required form group has a validation state that can be triggered by attempting to submit the form without completing it.</p> + </div> + + <div class="row"> + <div class="col-md-4 order-md-2 mb-4"> + <h4 class="d-flex justify-content-between align-items-center mb-3"> + <span class="text-muted">Your cart</span> + <span class="badge badge-secondary badge-pill">3</span> + </h4> + <ul class="list-group mb-3"> + <li class="list-group-item d-flex justify-content-between lh-condensed"> + <div> + <h6 class="my-0">Product name</h6> + <small class="text-muted">Brief description</small> + </div> + <span class="text-muted">$12</span> + </li> + <li class="list-group-item d-flex justify-content-between lh-condensed"> + <div> + <h6 class="my-0">Second product</h6> + <small class="text-muted">Brief description</small> + </div> + <span class="text-muted">$8</span> + </li> + <li class="list-group-item d-flex justify-content-between lh-condensed"> + <div> + <h6 class="my-0">Third item</h6> + <small class="text-muted">Brief description</small> + </div> + <span class="text-muted">$5</span> + </li> + <li class="list-group-item d-flex justify-content-between bg-light"> + <div class="text-success"> + <h6 class="my-0">Promo code</h6> + <small>EXAMPLECODE</small> + </div> + <span class="text-success">-$5</span> + </li> + <li class="list-group-item d-flex justify-content-between"> + <span>Total (USD)</span> + <strong>$20</strong> + </li> + </ul> + + <form class="card p-2"> + <div class="input-group"> + <input type="text" class="form-control" placeholder="Promo code"> + <div class="input-group-append"> + <button type="submit" class="btn btn-secondary">Redeem</button> + </div> + </div> + </form> + </div> + <div class="col-md-8 order-md-1"> + <h4 class="mb-3">Billing address</h4> + <form class="needs-validation" novalidate> + <div class="row"> + <div class="col-md-6 mb-3"> + <label for="firstName">First name</label> + <input type="text" class="form-control" id="firstName" placeholder="" value="" required> + <div class="invalid-feedback"> + Valid first name is required. + </div> + </div> + <div class="col-md-6 mb-3"> + <label for="lastName">Last name</label> + <input type="text" class="form-control" id="lastName" placeholder="" value="" required> + <div class="invalid-feedback"> + Valid last name is required. + </div> + </div> + </div> + + <div class="mb-3"> + <label for="username">Username</label> + <div class="input-group"> + <div class="input-group-prepend"> + <span class="input-group-text">@</span> + </div> + <input type="text" class="form-control" id="username" placeholder="Username" required> + <div class="invalid-feedback" style="width: 100%;"> + Your username is required. + </div> + </div> + </div> + + <div class="mb-3"> + <label for="email">Email <span class="text-muted">(Optional)</span></label> + <input type="email" class="form-control" id="email" placeholder="you@example.com"> + <div class="invalid-feedback"> + Please enter a valid email address for shipping updates. + </div> + </div> + + <div class="mb-3"> + <label for="address">Address</label> + <input type="text" class="form-control" id="address" placeholder="1234 Main St" required> + <div class="invalid-feedback"> + Please enter your shipping address. + </div> + </div> + + <div class="mb-3"> + <label for="address2">Address 2 <span class="text-muted">(Optional)</span></label> + <input type="text" class="form-control" id="address2" placeholder="Apartment or suite"> + </div> + + <div class="row"> + <div class="col-md-5 mb-3"> + <label for="country">Country</label> + <select class="custom-select d-block w-100" id="country" required> + <option value="">Choose...</option> + <option>United States</option> + </select> + <div class="invalid-feedback"> + Please select a valid country. + </div> + </div> + <div class="col-md-4 mb-3"> + <label for="state">State</label> + <select class="custom-select d-block w-100" id="state" required> + <option value="">Choose...</option> + <option>California</option> + </select> + <div class="invalid-feedback"> + Please provide a valid state. + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="zip">Zip</label> + <input type="text" class="form-control" id="zip" placeholder="" required> + <div class="invalid-feedback"> + Zip code required. + </div> + </div> + </div> + <hr class="mb-4"> + <div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="same-address"> + <label class="custom-control-label" for="same-address">Shipping address is the same as my billing address</label> + </div> + <div class="custom-control custom-checkbox"> + <input type="checkbox" class="custom-control-input" id="save-info"> + <label class="custom-control-label" for="save-info">Save this information for next time</label> + </div> + <hr class="mb-4"> + + <h4 class="mb-3">Payment</h4> + + <div class="d-block my-3"> + <div class="custom-control custom-radio"> + <input id="credit" name="paymentMethod" type="radio" class="custom-control-input" checked required> + <label class="custom-control-label" for="credit">Credit card</label> + </div> + <div class="custom-control custom-radio"> + <input id="debit" name="paymentMethod" type="radio" class="custom-control-input" required> + <label class="custom-control-label" for="debit">Debit card</label> + </div> + <div class="custom-control custom-radio"> + <input id="paypal" name="paymentMethod" type="radio" class="custom-control-input" required> + <label class="custom-control-label" for="paypal">PayPal</label> + </div> + </div> + <div class="row"> + <div class="col-md-6 mb-3"> + <label for="cc-name">Name on card</label> + <input type="text" class="form-control" id="cc-name" placeholder="" required> + <small class="text-muted">Full name as displayed on card</small> + <div class="invalid-feedback"> + Name on card is required + </div> + </div> + <div class="col-md-6 mb-3"> + <label for="cc-number">Credit card number</label> + <input type="text" class="form-control" id="cc-number" placeholder="" required> + <div class="invalid-feedback"> + Credit card number is required + </div> + </div> + </div> + <div class="row"> + <div class="col-md-3 mb-3"> + <label for="cc-expiration">Expiration</label> + <input type="text" class="form-control" id="cc-expiration" placeholder="" required> + <div class="invalid-feedback"> + Expiration date required + </div> + </div> + <div class="col-md-3 mb-3"> + <label for="cc-cvv">CVV</label> + <input type="text" class="form-control" id="cc-cvv" placeholder="" required> + <div class="invalid-feedback"> + Security code required + </div> + </div> + </div> + <hr class="mb-4"> + <button class="btn btn-primary btn-lg btn-block" type="submit">Continue to checkout</button> + </form> + </div> + </div> + + <footer class="my-5 pt-5 text-muted text-center text-small"> + <p class="mb-1">© 2017-2018 Company Name</p> + <ul class="list-inline"> + <li class="list-inline-item"><a href="#">Privacy</a></li> + <li class="list-inline-item"><a href="#">Terms</a></li> + <li class="list-inline-item"><a href="#">Support</a></li> + </ul> + </footer> + </div> + + <!-- Bootstrap core JavaScript + ================================================== --> + <!-- Placed at the end of the document so the pages load faster --> + <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> + <script>window.jQuery || document.write('<script src="../../../../assets/js/vendor/jquery-slim.min.js"><\/script>')</script> + <script src="../../../../assets/js/vendor/popper.min.js"></script> + <script src="../../../../dist/js/bootstrap.min.js"></script> + <script src="../../../../assets/js/vendor/holder.min.js"></script> + <script> + // Example starter JavaScript for disabling form submissions if there are invalid fields + (function() { + 'use strict'; + + window.addEventListener('load', function() { + // Fetch all the forms we want to apply custom Bootstrap validation styles to + var forms = document.getElementsByClassName('needs-validation'); + + // Loop over them and prevent submission + var validation = Array.prototype.filter.call(forms, function(form) { + form.addEventListener('submit', function(event) { + if (form.checkValidity() === false) { + event.preventDefault(); + event.stopPropagation(); + } + form.classList.add('was-validated'); + }, false); + }); + }, false); + })(); + </script> + </body> +</html> |