diff --git a/src/Umbraco.Web.UI.Client/gruntFile.js b/src/Umbraco.Web.UI.Client/gruntFile.js index 9ce6c14731..29b83939ac 100644 --- a/src/Umbraco.Web.UI.Client/gruntFile.js +++ b/src/Umbraco.Web.UI.Client/gruntFile.js @@ -11,17 +11,17 @@ module.exports = function (grunt) { //TODO: Too much watching, this brings windows to it's knees when in dev mode //run by the watch task grunt.registerTask('watch-js', ['jshint:dev', 'concat', 'copy:app', 'copy:mocks', 'copy:canvasdesigner', 'copy:vs', 'karma:unit']); - grunt.registerTask('watch-less', ['recess:build', 'recess:installer', 'recess:canvasdesigner', 'postcss', 'copy:canvasdesigner', 'copy:assets', 'copy:vs']); + grunt.registerTask('watch-less', ['recess:build', 'recess:installer', 'recess:nonodes', 'recess:canvasdesigner', 'postcss', 'copy:canvasdesigner', 'copy:assets', 'copy:vs']); grunt.registerTask('watch-html', ['copy:views', 'copy:vs']); grunt.registerTask('watch-installer', ['concat:install', 'concat:installJs', 'copy:installer', 'copy:vs']); grunt.registerTask('watch-canvasdesigner', ['copy:canvasdesigner', 'concat:canvasdesignerJs', 'copy:vs']); grunt.registerTask('watch-test', ['jshint:dev', 'karma:unit']); //triggered from grunt - grunt.registerTask('build', ['concat', 'recess:build', 'recess:installer', 'recess:canvasdesigner', 'postcss', 'bower-install-simple', 'bower', 'copy', 'clean:post']); + grunt.registerTask('build', ['concat', 'recess:build', 'recess:installer', 'recess:nonodes', 'recess:canvasdesigner', 'postcss', 'bower-install-simple', 'bower', 'copy', 'clean:post']); //triggered from grunt dev vs or grunt vs - grunt.registerTask('build-dev', ['clean:pre', 'concat', 'recess:build', 'recess:installer', 'postcss', 'bower-install-simple', 'bower', 'copy']); + grunt.registerTask('build-dev', ['clean:pre', 'concat', 'recess:build', 'recess:installer', 'recess:nonodes', 'postcss', 'bower-install-simple', 'bower', 'copy']); //utillity tasks grunt.registerTask('docs', ['ngdocs']); @@ -293,6 +293,16 @@ module.exports = function (grunt) { compress: true } }, + nonodes: { + files: { + '<%= distdir %>/assets/css/nonodes.style.min.css': + ['src/less/pages/nonodes.less'] + }, + options: { + compile: true, + compress: true + } + }, installer: { files: { '<%= distdir %>/assets/css/installer.css': diff --git a/src/Umbraco.Web.UI.Client/src/assets/css/nonodes.style.min.css b/src/Umbraco.Web.UI.Client/src/assets/css/nonodes.style.min.css deleted file mode 100644 index 5299a59c7e..0000000000 --- a/src/Umbraco.Web.UI.Client/src/assets/css/nonodes.style.min.css +++ /dev/null @@ -1,17 +0,0 @@ -@font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 400; - src: url('../fonts/opensans/OpenSans-Regular-webfont.eot'); - src: local('Open Sans'), local('OpenSans'), url('../fonts/opensans/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/opensans/OpenSans-Regular-webfont.ttf') format('truetype'), url('../fonts/opensans/OpenSans-Regular-webfont.svg#open_sansregular') format('svg'); -} - -@font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 600; - src: url('../fonts/opensans/OpenSans-Semibold-webfont.eot'); - src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url('../fonts/opensans/OpenSans-Semibold-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/opensans/OpenSans-Semibold-webfont.ttf') format('truetype'), url('../fonts/opensans/OpenSans-Semibold-webfont.svg#open_sanssemibold') format('svg'); -} - -abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;outline:0;border:0;background:0 0;vertical-align:baseline;font-size:100%}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;background:0 0;vertical-align:baseline;font-size:100%}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-weight:700;font-style:italic}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-spacing:0;border-collapse:collapse}hr{display:block;margin:1em 0;padding:0;height:1px;border:0;border-top:1px solid #ccc}input,select{vertical-align:middle}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:after,:before{box-sizing:border-box}body,html{height:100%;width:100%;color:#fff;font-family:'Open Sans',sans-serif;font-weight:400;font-size:.9375em;line-height:1.5}h1{font-size:1.7em;margin:40px auto 10px;font-weight:700}h2{font-size:1.35em;margin:0 auto .4em;font-weight:700}h3{font-size:1em;font-weight:400;font-style:italic}p{font-size:1em;line-height:1.6}p+a{margin-top:1rem;display:inline-block}a,a:active,a:visited{text-decoration:none}.cta{margin:4.5em auto 1.5em;padding-bottom:4.5em}.button,.button:visited{padding:.9375em 1.875em;border-radius:.1em;font-weight:600;font-size:1.2em;background:#2e99f4;color:#fff;display:inline-block;border:none;transition:all 200ms ease-in-out}.button:hover,.button:visited:hover{border-bottom:none;background:#0c80e3}section{background:url(../img/nonodesbg.jpg) center center/cover;height:100%;width:100%;display:table;padding:3em 1.75em}section a,section a:focus,section a:visited{color:#46a5f5;font-size:1.1625em;border-bottom:1px solid transparent;transition:border-bottom 100ms ease-in-out}section a:focus:hover,section a:hover,section a:visited:hover{border-bottom:1px solid}section:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.17);background:linear-gradient(45deg,rgba(85,98,112,.1) 10%,rgba(255,107,107,.1) 95%);z-index:0}section article{display:table-cell;vertical-align:middle;margin:0 auto;text-align:center;position:relative;z-index:100}section article>div{max-width:60em;margin:0 auto}section .logo{background:url(../img/logo.png) no-repeat;width:91px;height:91px;margin:0 auto}section .row{overflow:hidden}section .row .col{text-align:left;width:100%}section .row .col:nth-child(2){margin-top:3em}@media screen and (min-width:48em){body,html{font-size:1em}h1{font-size:2.5em;margin:70px auto 0;letter-spacing:.5px}h2{font-size:1.4375em;margin:0 auto 1em}h3{font-size:1.2em}a{font-size:1.1rem;font-weight:600}p+a{margin-top:3rem}.cta{margin:7.5em auto 2.5em;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:7.5em}section{padding:0 15px}section .row .col{float:left;width:50%;padding-right:5%;display:inline-block}section .row .col:nth-child(2){padding-right:0;padding-left:5%;margin-top:0}.button{font-size:1.1625em}} \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/less/pages/nonodes.less b/src/Umbraco.Web.UI.Client/src/less/pages/nonodes.less new file mode 100644 index 0000000000..868a358d21 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/less/pages/nonodes.less @@ -0,0 +1,367 @@ +@import "../fonts.less"; // Loading fonts +@import "../variables.less"; // Loading variables + +abbr, +address, +article, +aside, +audio, +b, +blockquote, +body, +canvas, +caption, +cite, +code, +dd, +del, +details, +dfn, +div, +dl, +dt, +em, +fieldset, +figcaption, +figure, +footer, +form, +h1, +h2, +h3, +h4, +h5, +h6, +header, +hgroup, +html, +i, +iframe, +img, +ins, +kbd, +label, +legend, +li, +mark, +menu, +nav, +object, +ol, +p, +pre, +q, +samp, +section, +small, +span, +strong, +sub, +summary, +sup, +table, +tbody, +td, +tfoot, +th, +thead, +time, +tr, +ul, +var, +video { + margin: 0; + padding: 0; + outline: 0; + border: 0; + background: 0 0; + vertical-align: baseline; + font-size: 100%; +} + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section { + display: block; +} + +nav ul { + list-style: none; +} + +blockquote, +q { + quotes: none; +} + +blockquote:after, +blockquote:before, +q:after, +q:before { + content: ''; + content: none; +} + +a { + margin: 0; + padding: 0; + background: 0 0; + vertical-align: baseline; + font-size: 100%; +} + +ins { + background-color: @yellow-l3; + color: @black; + text-decoration: none; +} + +mark { + background-color: @yellow-l3; + color: @black; + font-weight: bold; + font-style: italic; +} + +del { + text-decoration: line-through; +} + +abbr[title], +dfn[title] { + border-bottom: 1px dotted; + cursor: help; +} + +table { + border-spacing: 0; + border-collapse: collapse; +} + +hr { + display: block; + margin: 1em 0; + padding: 0; + height: 1px; + border: 0; + border-top: 1px solid @gray-8; +} + +input, +select { + vertical-align: middle; +} + +html { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +*, +:after, +:before { + box-sizing: border-box; +} + +body, +html { + height: 100%; + width: 100%; + color: @white; + font-family: @sansFontFamily; + font-weight: 400; + font-size: .9375em; + line-height: 1.5; +} + +h1 { + font-size: 1.7em; + margin: 40px auto 10px; + font-weight: 700; +} + +h2 { + font-size: 1.35em; + margin: 0 auto .4em; + font-weight: 700; +} + +h3 { + font-size: 1em; + font-weight: 400; + font-style: italic; +} + +p { + font-size: 1em; + line-height: 1.6; +} + +p+a { + margin-top: 1rem; + display: inline-block; +} + +a, +a:active, +a:visited { + text-decoration: none; +} + +.cta { + margin: 4.5em auto 1.5em; + padding-bottom: 4.5em; +} + +.button, +.button:visited { + padding: .9375em 1.875em; + border-radius: .1em; + font-weight: 600; + font-size: 1.2em; + background: @green; + color: @white; + display: inline-block; + border: none; + transition: all 200ms ease-in-out; + border-radius: 3px; +} + +.button:hover, +.button:visited:hover { + border-bottom: none; + background: @green-d1; +} + +section { + background-image: url(../img/nonodesbg.jpg); + background-position: center center; + background-size: cover; + height: 100%; + width: 100%; + display: table; + padding: 3em 1.75em +} + +section a, +section a:focus, +section a:visited { + color: @white; + font-size: 1.1625em; + border-bottom: 1px solid @white; + transition: border-bottom 100ms ease-in-out; +} + +section a:focus:hover, +section a:hover, +section a:visited:hover { + border-bottom: 1px solid; +} + +section:after { + content: ""; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: rgba(0, 0, 0, .17); + background: linear-gradient(45deg, rgba(85, 98, 112, .1) 10%, rgba(255, 107, 107, .1) 95%); + z-index: 0 +} + +section article { + display: table-cell; + vertical-align: middle; + margin: 0 auto; + text-align: center; + position: relative; + z-index: 100; +} + +section article>div { + max-width: 60em; + margin: 0 auto; + padding-top: 50px; + padding-bottom: 70px; +} + +section .logo { + background-image: url(../img/logo.png); + background-repeat: no-repeat; + width: 91px; + height: 91px; + margin: 0 auto; +} + +section .row { + overflow: hidden; +} + +section .row .col { + text-align: left; + width: 100%; +} + +section .row .col:nth-child(2) { + margin-top: 3em; +} + +@media screen and (min-width:48em) { + body, + html { + font-size: 1em; + } + h1 { + font-size: 2.5em; + margin: 70px auto 0; + letter-spacing: .5px; + } + h2 { + font-size: 1.4375em; + margin: 0 auto 1em; + } + h3 { + font-size: 1.2em; + } + a { + font-size: 1.1rem; + font-weight: 600; + } + p+a { + margin-top: 3rem; + } + .cta { + margin: 7.5em auto 2.5em; + border-bottom: 1px solid @gray-5; + padding-bottom: 7.5em; + } + section { + padding: 0 15px; + } + section .row .col { + float: left; + width: 50%; + padding-right: 5%; + display: inline-block; + } + section .row .col:nth-child(2) { + padding-right: 0; + padding-left: 5%; + margin-top: 0; + } + .button { + font-size: 1.1625em; + } +} + + +