enter image description here

.s-select { margin-top: 37px; } form { background-color: #fff; } .select { color: #000; width: 290px; height: 50px; padding-left: 29px; color: #000000; font-family: Montserrat; font-size: 14px; font-weight: 500; line-height: 60px; text-transform: uppercase; background-color: #fff; letter-spacing: 0.7px; } .select .option:hover { color: #e41645; background-color: #fff; overflow-y: auto; } .select .option:active { background-color: #fff; } .selectbox .select:hover { background-color: #fff; background-position: 0 -10px; } .selectize-control.single .selectize-input, .selectize-control.single .selectize-input input { background-color: #fff; padding-top: 18px; padding-bottom: 18px; } .selectize-control.single .selectize-input, .selectize-control.single .selectize-input input:hover { background-color: #fff; } .selectize-dropdown, .selectize-input, .selectize-input input { background-color: #fff; } .select__title { color: #333333; font-family: Montserrat; font-size: 20px; font-weight: 700; line-height: 73px; text-transform: uppercase; padding-bottom: 22px; letter-spacing: 2px; border-bottom: 1px solid #e4e4e4; } .seli { margin-top: 100px; } .select-block { margin-left: 70px; } 
 <section class="s-select"> <div class="container"> <div class="row"> <div class="col-md-3"> <form action="#" method="post"> <select size="1" name="hero[]" class='select' id='select-beast'> <option class='option'>MID</option> <option class='option'>AC</option> <option class='option'>Muse</option> <option class='option'>Solon</option> </select> </form> </div> </div> </div> </section> 

2 answers 2

You can simulate such a select through JS)
(added a variant for several selections on the page below)

For one such item:

 (function(){ /*ΠŸΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° "сСлСкт" - ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ класс-Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΊΡƒ*/ /*Π’Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΊΠ° Π² CSS Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π² самом ΠΊΠΎΠ½Ρ†Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»Π° Π² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅*/ document.getElementById('colorpick').addEventListener('click',function(){ document.getElementById('dropdown').classList.toggle('INVIS'); }); let check;//let, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ, считая ΠΊΠΎΠ»-Π²ΠΎ классов const clr = document.getElementById('clr');//это Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΉ span ΠΏΠ΅Ρ€Π΅Π΄ "Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ Ρ†Π²Π΅Ρ‚" const color = document.getElementsByClassName('color'); for(let i = 0; i < color.length; i++){ color[i].addEventListener('click',function(){ /*ΠŸΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ "ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΉ" класс. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‚ΠΎΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊΠΆΠ΅ нСсСт Π² сСбС ΠΎΡ€Π°Π½ΠΆΠ΅Π²ΡƒΡŽ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ */ this.classList.toggle('check'); check = document.getElementsByClassName('check').length; //тСкст Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄Π΅Π»Π°Π΅ΠΌ Ρ€Π°Π²Π½Ρ‹ΠΌ ΠΊΠΎΠ»-Π²Ρƒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… классов, + скобки для Π²ΠΈΠ΄Π°; clr.innerText = '(' + check + ')'; if(check > 0) { clr.style.display = "inline-block"; } else {clr.style.display = "none";}//Ссли ΡƒΠ±Ρ€Π°Π»ΠΈ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ ΠΈ стало 0 - Π΄Π΅Π»Π°Π΅ΠΌ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ }); } //Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΎΠΏΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π½ΠΈΡ… ΡƒΠ±ΠΈΡ€Π°ΡŽΡ‚ ΠΌΡ‹ΡˆΠΊΡƒ. document.getElementById('dropdown').addEventListener('mouseleave',function(){ this.classList.toggle('INVIS'); }); })(); 
 .block {width: 30%} #colorpick { text-align: center; cursor: pointer; box-sizing: border-box; /*Π²Π°ΠΆΠ½ΠΎ для нСзаивисомти ΠΎΡ‚ padding*/ padding: 5px; border: 1px solid #333; user-select: none; /*БСсит, ΠΊΠΎΠ³Π΄Π° кликаСшь ΠΈ тСкст выдСляСтся*/ } .color { box-sizing: border-box; padding: 2px 3px; margin: 0 1px; border-bottom: 1px solid #666; /*relative Π²Π°ΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π°Π»ΠΎΡ‡ΠΊΠ° Π½Π΅ ΡΡŠΠ΅Ρ…Π°Π»Π°*/ position: relative; } .color:hover {background-color: #ffe2aa; cursor: pointer;} /*Π­Ρ‚ΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ° Π³Π°Π»ΠΎΡ‡ΠΊΠΈ*/ .check:after { content: ""; position: absolute; right: 5px; width: 5px; height: 10px; border-bottom: 2px solid #f36700; border-right: 2px solid #f36700; transform: rotate(40deg); } .INVIS {display: none;} 
 <div class="block"> <div id="colorpick"><span id="clr" class="INVIS"></span> Π›ΡŽΠ±ΠΈΠΌΡ‹ΠΉ Ρ†Π²Π΅Ρ‚? β–Ό</div> <div id="dropdown" class="INVIS"> <div class="color">Π‘Π΅Π»Ρ‹ΠΉ</div> <div class="color">Π§Π΅Ρ€Π½Ρ‹ΠΉ</div> <div class="color">ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ</div> <div class="color">ΠžΡ€Π°Π½ΠΆΠ΅Π²ΡΠΊΠΈΠΉ</div> <div class="color">Π€ΠΈΠ»Π°Π»Π΅Ρ‚ΠΎΠ²Ρ‹ΠΉ</div> <div class="color">ΠšΠ°Ρ€ΠΈΡ‡Π½Ρ‘Π²ΡΠΊΠΈΠΉ</div> </div> </div> 

For several selects ...

Redid the option for classes. In the script, the moment is actively used that in this example, HTML has the same number of selections, pop-up windows, and a "chosen" fad (so as not to go through for once again). Therefore, these classes do not need to add anywhere else on the page.

It is inconvenient to watch the results, so it’s better here: JsFiddle , stretch the window to full screen and delve into it) Added a few demo lines to make it easier to understand what the variables were created for.

 (function(){ /**/ const demo = document.getElementsByClassName('demo'); const colorpick = document.getElementsByClassName('colorpick'); const dropdown = document.getElementsByClassName('dropdown'); let check = []; let index; for(let i = 0; i < colorpick.length; i++){ check.push(0); /**/ demo[0].innerHTML = check; colorpick[i].addEventListener('mouseenter', function(){ index = i; /**/ demo[1].innerHTML = index; for(let u = 0; u < dropdown.length; u++){dropdown[u].classList.add('INVIS');} dropdown[i].classList.remove('INVIS'); }); dropdown[i].addEventListener('mouseleave',function(){ this.classList.add('INVIS'); }); } const clr = document.getElementsByClassName('clr'); const color = document.getElementsByClassName('color'); for(let i = 0; i < color.length; i++){ color[i].addEventListener('click',function(){ if( this.className.match(/check/g) ){ this.classList.remove('check'); check[index] = check[index] - 1; } else {this.classList.add('check'); check[index] = check[index] + 1;} /**/ demo[2].innerHTML = check; clr[index].innerText = '(' + check[index] + ')'; }); } })(); 
 /*CSS нС мСнял*/ .block {width: 30%}.colorpick { text-align: center; cursor: pointer; box-sizing: border-box; padding: 5px; border: 1px solid #333; user-select: none;}.color, .total { box-sizing: border-box; padding: 2px 3px; margin: 0 1px; border-bottom: 1px solid #666; position: relative;}.total {background-color: #bbb;}.color:hover {background-color: #ffe2aa; cursor: pointer;} .check:after { content: ""; position: absolute; right: 5px; width: 5px; height: 10px; border-bottom: 2px solid #f36700; border-right: 2px solid #f36700; transform: rotate(40deg);}.INVIS {display: none;} 
 <span class="demo">0</span> β€” check.push(0); β€” создали массив, Π³Π΄Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сСлСкта Π±ΡƒΠ΄Π΅Ρ‚ хранится ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ 0 (ноль Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ…) <br><span class="demo">0</span> β€” index (мСняСтся ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° сСлСкт) <br><span class="demo">0</span> β€” check[index] = check[index] -/+ 1; // Π’ΠΎΡ‚ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° ΠΏΡƒΠ½ΠΊΡ‚Ρ‹, Π±Ρ€Π°Ρ‚ΡŒ этот индСкс ΠΈ Ссли Π±Ρ‹Π» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ класс - Π³Π°Π»ΠΎΡ‡ΠΊΡƒ, ΠΏΡ€ΠΈΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ числу Π² массивС +1, Π° Ссли ΡƒΠ±Ρ€Π°Π½ класс, -1. А ΠΏΠΎΡ‚ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎ этому ΠΆΠ΅ индСксу ΠΏΠΎΠ»Ρ‡ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π² ΠΊΠΎΠ»-Π²Π΅ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ…. <br><br> <div style="display: flex"> <div class="block"> <div class="colorpick"> Π›ΡŽΠ±ΠΈΠΌΡ‹ΠΉ Ρ†Π²Π΅Ρ‚? β–Ό</div> <div class="dropdown INVIS"> <div class="total">Π’Ρ‹Π±Ρ€Π°Π½ΠΎ: <span class="clr">0</span></div> <div class="color">Π‘Π΅Π»Ρ‹ΠΉ</div> <div class="color">Π§Π΅Ρ€Π½Ρ‹ΠΉ</div> <div class="color">ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ</div> <div class="color">ΠžΡ€Π°Π½ΠΆΠ΅Π²ΡΠΊΠΈΠΉ</div> <div class="color">Π€ΠΈΠ»Π°Π»Π΅Ρ‚ΠΎΠ²Ρ‹ΠΉ</div> <div class="color">ΠšΠ°Ρ€ΠΈΡ‡Π½Ρ‘Π²ΡΠΊΠΈΠΉ</div> </div> </div> <div class="block"> <div class="colorpick"> Π›ΡŽΠ±ΠΈΠΌΡ‹ΠΉ Ρ†Π²Π΅Ρ‚? β–Ό</div> <div class="dropdown INVIS"> <div class="total">Π’Ρ‹Π±Ρ€Π°Π½ΠΎ: <span class="clr">0</span></div> <div class="color">Π‘Π΅Π»Ρ‹ΠΉ</div> <div class="color">Π§Π΅Ρ€Π½Ρ‹ΠΉ</div> <div class="color">ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ</div> <div class="color">ΠžΡ€Π°Π½ΠΆΠ΅Π²ΡΠΊΠΈΠΉ</div> <div class="color">Π€ΠΈΠ»Π°Π»Π΅Ρ‚ΠΎΠ²Ρ‹ΠΉ</div> <div class="color">ΠšΠ°Ρ€ΠΈΡ‡Π½Ρ‘Π²ΡΠΊΠΈΠΉ</div> </div> </div> <div class="block"> <div class="colorpick"> Π›ΡŽΠ±ΠΈΠΌΡ‹ΠΉ Ρ†Π²Π΅Ρ‚? β–Ό</div> <div class="dropdown INVIS"> <div class="total">Π’Ρ‹Π±Ρ€Π°Π½ΠΎ: <span class="clr">0</span></div> <div class="color">Π‘Π΅Π»Ρ‹ΠΉ</div> <div class="color">Π§Π΅Ρ€Π½Ρ‹ΠΉ</div> <div class="color">ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ</div> <div class="color">ΠžΡ€Π°Π½ΠΆΠ΅Π²ΡΠΊΠΈΠΉ</div> <div class="color">Π€ΠΈΠ»Π°Π»Π΅Ρ‚ΠΎΠ²Ρ‹ΠΉ</div> <div class="color">ΠšΠ°Ρ€ΠΈΡ‡Π½Ρ‘Π²ΡΠΊΠΈΠΉ</div> </div> </div> </div> 

  • Done) (And I am not found anywhere else in social networks *) - OPTIMUS PRIME
  • me too :)) and how can you write besides this chat? - xes
  • a little wrong where it says the selected colors under it goes an element called selected and how many ticks there is and there is a number - xes
  • And, you do not know JS? const clr = document.getElementById('clr'); and clr.innerText = '(' + check + ')'; - the number changes due to these two lines. Those. tied to the id item. In HTML, you can take <span id="clr" class="INVIS"></span> and put it into another extra div (above the color list), and it will also work. - OPTIMUS PRIME
  • I did as you said and when you click on the color white, select auto closes - xes
 <select size="1" name="hero[]" class='select' id='select-beast' multiple> 
  • Please look at the picture. I need a drop-down list. How can I do it? - xes
  • @Loki, and what do you think this is not a drop-down list? You only need to add to the list multiple . - And
  • @And when you select an item a check mark appears using a multiple of this effect can you get? - xes
  • @Loki, and try to do it first ?? - And
  • one
    @OPTIMUSPRIME, select with the mouse =) - And