Maintain input height when adding items + toggling select all

This commit is contained in:
Josh Johnson 2016-03-22 14:36:01 +00:00
parent ff7521b090
commit ced83cd728
5 changed files with 24 additions and 6 deletions

File diff suppressed because one or more lines are too long

View file

@ -127,7 +127,12 @@ export class Choices {
for (let i = 0; i < this.list.children.length; i++) {
let listItem = this.list.children[i];
listItem.classList.add('is-selected');
if(listItem.classList.contains('is-selected')) {
listItem.classList.remove('is-selected');
} else {
listItem.classList.add('is-selected');
}
}
}
}
@ -159,6 +164,7 @@ export class Choices {
this.addItem(this.list, value);
this.updateInputValue(value);
this.clearInput(this.element);
this.unselectAll(this.list.children);
} else {
}
@ -265,6 +271,16 @@ export class Choices {
parent.appendChild(item);
}
unselectAll(items) {
for (let i = 0; i < items.length; i++) {
let item = items[i];
if (item.classList.contains('is-selected')) {
item.classList.remove('is-selected');
}
};
}
removeAll(items) {
for (let i = 0; i < items.length; i++) {
let item = items[i];

View file

@ -45,7 +45,7 @@ label {
display: inline-block;
border-radius: .4rem;
padding: .4rem .8rem;
font-size: 1.4rem;
font-size: 1.2rem;
margin-right: .375rem;
margin-bottom: .375rem;
background-color: #00BCD4;
@ -65,6 +65,7 @@ label {
vertical-align: baseline;
border: 0;
border-radius: 0;
max-width: 100%; }
max-width: 100%;
padding: .4rem 0 .4rem .2rem; }
.choices__input:focus {
outline: 0; }

View file

@ -1 +1 @@
*,:after,:before{box-sizing:border-box}body,html{margin:0;height:100%;widows:100%}html{font-size:62.5%}body{background-color:#fafafa;font-family:'Helvetica Neue','Helvetica','Arial',sans-serif;font-size:1.6rem;color:#222;padding:2.4rem}label{display:block;margin-bottom:.8rem}.choices{margin-bottom:2.4rem;position:relative}.choices__inner{background-color:#fff;padding:.75rem .75rem .375rem;border:1px solid #ddd;border-radius:.25rem;font-size:1.4rem}.choices__inner:focus{outline:1px solid #00bcd4;outline-offset:-1px}.choices__list{margin:0;padding-left:0;list-style-type:none}.choices__list--items{display:inline}.choices__list--items .choices__item{display:inline-block;border-radius:.4rem;padding:.4rem .8rem;font-size:1.4rem;margin-right:.375rem;margin-bottom:.375rem;background-color:#00bcd4;text-shadow:0 1px 0 #008fa1;border:1px solid #00a5bb;box-shadow:0 1px 1px rgba(0,0,0,.2);color:#fff;cursor:pointer}.choices__list--items .choices__item.is-selected{background-color:#00a5bb}.choices__input{font-size:1.4rem;padding:0;margin-bottom:.5rem;display:inline-block;vertical-align:baseline;border:0;border-radius:0;max-width:100%}.choices__input:focus{outline:0}
*,:after,:before{box-sizing:border-box}body,html{margin:0;height:100%;widows:100%}html{font-size:62.5%}body{background-color:#fafafa;font-family:'Helvetica Neue','Helvetica','Arial',sans-serif;font-size:1.6rem;color:#222;padding:2.4rem}label{display:block;margin-bottom:.8rem}.choices{margin-bottom:2.4rem;position:relative}.choices__inner{background-color:#fff;padding:.75rem .75rem .375rem;border:1px solid #ddd;border-radius:.25rem;font-size:1.4rem}.choices__inner:focus{outline:1px solid #00bcd4;outline-offset:-1px}.choices__list{margin:0;padding-left:0;list-style-type:none}.choices__list--items{display:inline}.choices__list--items .choices__item{display:inline-block;border-radius:.4rem;padding:.4rem .8rem;font-size:1.2rem;margin-right:.375rem;margin-bottom:.375rem;background-color:#00bcd4;text-shadow:0 1px 0 #008fa1;border:1px solid #00a5bb;box-shadow:0 1px 1px rgba(0,0,0,.2);color:#fff;cursor:pointer}.choices__list--items .choices__item.is-selected{background-color:#00a5bb}.choices__input{font-size:1.4rem;padding:0;margin-bottom:.5rem;display:inline-block;vertical-align:baseline;border:0;border-radius:0;max-width:100%;padding:.4rem 0 .4rem .2rem}.choices__input:focus{outline:0}

View file

@ -56,7 +56,7 @@ label {
display: inline-block;
border-radius: .4rem;
padding: .4rem .8rem;
font-size: 1.4rem;
font-size: 1.2rem;
margin-right: .375rem;
margin-bottom: .375rem;
background-color: #00BCD4;
@ -78,5 +78,6 @@ label {
border: 0;
border-radius: 0;
max-width: 100%;
padding: .4rem 0 .4rem .2rem;
&:focus { outline: 0; }
}