2015-06-24 4 views
0

Я пытаюсь сделать div как выпадающий список, и я пытаюсь сделать его отзывчивым, но никаких успехов на данный момент. Я пытаюсь заставить его придерживаться контейнера категорий.отзывчивый div как выпадающий список

the demo is here http://jsfiddle.net/yppw2cjt/1/ 

Я пытаюсь сделать его похожим на что-то вроде этого изображения:

http://s15.postimg.org/80b238nff/categoriesexample.png 

И я пытался сделать это не отображать ни и при наведении курсора на категории отображения блока, но по какой-то причине Ждут» т работы

у кого есть идеи?

Благодаря

+0

Опубликовать свой javascript – vel

+0

У меня нет кода java-скрипта для этого Не может ли это быть css? только – Erez

+0

Если вы меняете внешний вид статических блоков HTML, то это может быть только CSS. Но во-вторых, вы пытаетесь изменить статический контент (т. Е. Существование divs в DOM, текст или URL-адрес гиперссылки и т. Д.), Вы должны использовать Javascript (или серверный скрипт, но это намного сложнее). –

ответ

1

Надеюсь, я помогу вам, вы можете изменить css в соответствии с вашими потребностями.

\t .clearfix:after{content: '';clear: both;display: block;} 
 
\t .clr{clear: both;} 
 
\t #seraching-container{ 
 
    width: 100%; 
 
    margin-left: auto; 
 
    margin-right: auto; 
 
} 
 
#search-input{ 
 
    width: 100%; 
 
    /*margin: 2% 1%;*/ 
 
    /*margin: 0 1%;*/ 
 

 
    font-weight: 700; 
 
    float: left; 
 
} 
 
#category-list{ 
 
    width: 90%; 
 
    border: 1px solid darkgray; 
 
    background: #e2e2e2; 
 
    position: absolute; 
 
    opacity: 0.90; 
 
    top: 23px; 
 
    z-index: 10; /*because its absolute*/ 
 
    left: 0; 
 
    margin: 0 1%; 
 
} 
 
a.category-item { 
 
    float: left; 
 
    width: 26%; 
 
    margin: auto 2%; 
 
    line-height: 0.5; 
 
    padding-left: 2%; 
 
    text-decoration: none; 
 
}a.category-item p{ 
 
    font-weight: bold; 
 
    text-decoration: none; 
 
    color: rgb(58, 56, 56); 
 
}a.category-item p:hover{ 
 
    color: #5DA5D1; 
 
    text-decoration: 
 
    none;cursor: pointer; 
 
} 
 
div#categories-ctainer { 
 
    width: 90%; 
 
    /*margin: 2% 1%;*/ 
 
    margin: 0 1%; 
 
    height: 100%; 
 
    background-color: #fff; 
 
    border: 1px solid darkgray; 
 
    float: left; 
 
    position: relative; 
 
    /*overflow: hidden;*/ 
 
}div#categories-ctainer p{ 
 
    color: #A9A9AB; 
 
    font-weight: 700; 
 
    float: left; 
 
    margin:0; 
 
    position: relative; 
 

 
}div#categories-ctainer img{ 
 
    float: right; 
 
    margin: 0; 
 
    height: 19px; 
 
    position: relative; 
 
} 
 
#button-search{ 
 
    width: 6%; 
 
    float: left; 
 
    margin: 0 0 0 1%; 
 
} 
 

 
.searchWrap , .dropdown_warp{position: relative;float: left;width: 48%;margin: 1%;} 
 
@media screen and (max-width: 600px) { 
 
\t .searchWrap , .dropdown_warp{width:100%;} 
 
}
<div id="searching-c" class="clearfix"> 
 
<div class="searchWrap"> 
 
\t <input id="search-input" type="text" name="search_field" value="" placeholder="search"> 
 
</div> 
 
\t 
 
\t <div class="dropdown_warp"> 
 
\t \t <div id="categories-ctainer" name="categories"> 
 
\t \t \t <p>Categories</p> 
 
\t \t \t <img src="../images/arrowdown.png" alt=""> 
 
\t \t </div> 
 
\t \t <button type="submit" id="button-search" value="send">S</button> 
 
\t \t <div class="clr"></div> 
 
\t <div id="category-list"> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> 
 
\t <a class="category-item"><p> Food</p></a> \t 
 
</div> 
 
\t </div> 
 
</div>

+0

Спасибо, что было полезно вы можете объяснить ответ? поэтому я буду умнее, и в следующий раз мне не нужно будет спрашивать – Erez

1
$(document).ready(function(){ 
     $(".dropdownlist").mouseover(function() { 
      $("#category-list").show(); 
     }).mouseout(function() { 
      $("#category-list").hide(); 
     });  
    }); 

попробовать это. добавить класс для выпадающего изображения.

+0

http://jsfiddle.net/yppw2cjt/2/ update fiddle – vel

+0

хорошо, что не работает так хорошо, потому что его только показывают его, когда мышь, но не может на самом деле нажать на любой элемент списка. реагирует? Основная идея заключается в том, чтобы сделать его отзывчивым, код java-скрипта менее важен, но спасибо за код, который вы действительно хороший – Erez

1

Есть причина, у вас есть #category-list вне #categories-ctainer?

Если вы переместите #category-list в #categories-ctainer, вы можете сделать его работу просто отлично. Вот example (я никогда не могу заставить jsfiddle работать для меня).

После этого просто используйте то, что вы пытались раньше, display: none и display:block на #categories-ctainer:hover. Добавьте в некоторое абсолютное позиционирование и, вуаля.

HTML:

<div id="searching-c"> 
    <input id="search-input" type="text" name="search_field" value="" placeholder="search"> 
    <div id="categories-ctainer" name="categories"> 
    <p>Categories</p> 
    <img src="../images/arrowdown.png" alt=""> 
    <div id="category-list"> 
     <a class="category-item"> 
     <p> Food</p> 
     </a> 
     ... 
     <a> 
     <p> Food</p> 
     </a> 
    </div> 
    </div> 
    <button type="submit" id="button-search" value="send"></button> 
</div> 

CSS:

#searching-c { 
    width: 100%; 
    margin-left: auto; 
    margin-right: auto; 
} 

#search-input { 
    width: 40%; 
    margin: 2% 1%; 
    font-weight: 700; 
    float: left; 
} 

#category-list { 
    width: 100%; 
    border: 1px solid darkgray; 
    background: #e2e2e2; 
    position: absolute; 
    opacity: 0.90; 
    top: 100%; 
    z-index: 10; 
    /*because its absolute*/ 

    left: 0; 
    display: none; 
} 

div#categories-ctainer:hover #category-list { 
    display: block; 
} 

a.category-item { 
    float: left; 
    width: 26%; 
    margin: auto 2%; 
    padding-left: 2%; 
    text-decoration: none; 
} 

a.category-item p { 
    font-weight: bold; 
    text-decoration: none; 
    color: rgb(58, 56, 56); 
} 

a.category-item p:hover { 
    color: #5DA5D1; 
    text-decoration: none; 
    cursor: pointer; 
} 

div#categories-ctainer { 
    width: 48%; 
    margin: 2% 1%; 
    height: 100%; 
    background-color: #fff; 
    border: 1px solid darkgray; 
    float: left; 
    position: relative; 
} 

div#categories-ctainer p { 
    color: #A9A9AB; 
    font-weight: 700; 
    float: left; 
    margin: 0; 
    position: relative; 
} 

div#categories-ctainer img { 
    float: right; 
    margin: 0; 
    height: 19px; 
    position: relative; 
} 

#button-search { 
    width: 3%; 
    float: left; 
    margin: 2% 1%; 
} 

Я также удалили line-height:.5 вы были на .category-item.

Это хорошо работает, потому что теперь она находится в пределах #categories-ctainer, когда вы нависли над #category-list вы все еще витает на #categories-ctainer, чтобы он не исчезает на вас.

Надеюсь, это поможет!

+0

, что очень полезно и помогает, я пытался навести курсор на + и>. это решение работает очень хорошо Спасибо – Erez

Смежные вопросы