Last active
March 16, 2018 03:56
-
-
Save darrenjaworski/03af0615180cfa375069a26029f37f6e to your computer and use it in GitHub Desktop.
materializecss modals
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<meta http-equiv="X-UA-Compatible" content="ie=edge"> | |
<title>Document</title> | |
<link rel="stylesheet" href="style.css" /> | |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/css/materialize.min.css"> | |
</head> | |
<body> | |
<!-- Modal Trigger --> | |
<a class="waves-effect waves-light btn modal-trigger" href="#modal1">Modal</a> | |
<!-- Modal Structure --> | |
<div id="modal1" class="modal modal-fixed-footer"> | |
<div class="modal-content"> | |
<h4>Modal Header</h4> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
</div> | |
</div> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
<a class="waves-effect waves-light btn modal-trigger" href="#modal1">Modal</a> | |
<div class="row"> | |
<form class="col s12"> | |
<div class="row"> | |
<div class="input-field col s6"> | |
<input placeholder="Placeholder" id="first_name" type="text" class="validate"> | |
<label for="first_name">First Name</label> | |
</div> | |
<div class="input-field col s6"> | |
<input id="last_name" type="text" class="validate"> | |
<label for="last_name">Last Name</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input disabled value="I am not editable" id="disabled" type="text" class="validate"> | |
<label for="disabled">Disabled</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="password" type="password" class="validate"> | |
<label for="password">Password</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="input-field col s12"> | |
<input id="email" type="email" class="validate"> | |
<label for="email">Email</label> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col s12"> | |
This is an inline input field: | |
<div class="input-field inline"> | |
<input id="email" type="email" class="validate"> | |
<label for="email" data-error="wrong" data-success="right">Email</label> | |
</div> | |
</div> | |
</div> | |
</form> | |
</div> | |
<script | |
src="https://code.jquery.com/jquery-3.3.1.min.js" | |
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" | |
crossorigin="anonymous"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/js/materialize.min.js"></script> | |
<script src="main.js"> | |
</script> | |
</body> | |
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$(document).ready(function() { | |
// the "href" attribute of the modal trigger must specify the modal ID that wants to be triggered | |
var el = $('body'); | |
$('.modal').modal({ | |
ready: function(modal, trigger) { | |
// Callback for Modal open. Modal and trigger parameters available. | |
var scrollPos = $(window).scrollTop(); | |
el | |
.addClass('no-scroll') | |
.attr('data-top', scrollPos) | |
.css('top', -scrollPos + 'px'); | |
}, | |
complete: function() { | |
var scrollPos = el.attr('data-top'); | |
el | |
.removeClass('no-scroll') | |
.attr('data-top', '') | |
.attr('style', ''); | |
$(window).scrollTop(scrollPos); | |
} | |
}); | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.no-scroll { | |
position: fixed; | |
width: 100%; | |
} | |
input, | |
textarea, | |
select { | |
font-size: 16px !important; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment