2017-01-03 2 views
0

텍스트가 뷰에서 벗어난 네 개의 요소를 왼쪽에 만들고 싶습니다. 한 요소에 마우스를 가져 가면이 요소 만 들어갈 수 있지만 모든 요소는 들여다 보입니다. 이 시점에서 나는 생각을하지 못했습니다. 모든 요소가 왜 들어가야합니까?한 요소에 마우스를 올리면 모든 요소에 적용됩니다.

<div class="fixed-icons"> 
<div class="fixed-icons__item fixed-icons__item--booking"> 
    <span>booking</span> 
</div> 
<div class="fixed-icons__item fixed-icons__item--voucher"> 
    <span>voucher</span> 
</div> 
<div class="fixed-icons__item fixed-icons__item--phone"> 
    <span>phone</span> 
</div> 
<div class="fixed-icons__item fixed-icons__item--eye"> 
    <span>eye</span> 
</div> 
</div> 

SCSS

.fixed-icons { 
position: fixed; 
top:40%; 
right:0; 

.fixed-icons__item { 
border: 1px solid white; 
background-color: #004576; 
color: white; 
padding: 0.25rem; 
margin: 0.25rem; 
cursor: pointer; 
margin-right:-50px; 
transition: 1s; 

&:hover { 
    transition: 1s; 
    margin-right:0; 

} 
} 
} 

codependemo

+1

몇 가지 코드를 게시하시기 바랍니다 귀하의 CSS를 편집했습니다. – AsheraH

답변

1

는 여기에 솔루션입니다.

margin 속성에 애니메이션을 적용하면 이상한 결과가 발생하여 transform으로 바뀌 었습니다.

.fixed-icons { 
 
    position: fixed; 
 
    top:40%; 
 
    right:0; 
 

 
    .fixed-icons__item { 
 
    border: 1px solid white; 
 
    background-color: #004576; 
 
    color: white; 
 
    padding: 0.25rem; 
 
    margin: 0.25rem; 
 
    cursor: pointer; 
 
    margin-right:-50px; 
 
    transition: 1s; 
 

 
    &:hover { 
 
     transition: 1s; 
 
     transform: translateX(-49px); 
 

 
    } 
 
    } 
 
}
Here's the solution. 
 

 

 
Animating the `margin` property caused some weird results - replaced it with `transform`. 
 

 
<div class="fixed-icons"> 
 
    <div class="fixed-icons__item fixed-icons__item--booking"> 
 
     <span>booking</span> 
 
    </div> 
 
    <div class="fixed-icons__item fixed-icons__item--voucher"> 
 
     <span>voucher</span> 
 
    </div> 
 
    <div class="fixed-icons__item fixed-icons__item--phone"> 
 
     <span>phone</span> 
 
    </div> 
 
    <div class="fixed-icons__item fixed-icons__item--eye"> 
 
     <span>eye</span> 
 
    </div> 
 
</div>

Codepen Link

0

, 내가 정확히 질문을 이해가 타격이 시도하지만 난 이해로 내가 이런 짓을했는지,이이

을 당신을 도움이 될 수 있습니다 시도

@import url(http://weloveiconfonts.com/api/?family=entypo); 
 

 
/* entypo */ 
 
[class*="entypo-"]:before { 
 
    font-family: "entypo", sans-serif; 
 
} 
 

 
a { 
 
    text-decoration: none; 
 
} 
 

 
ul { 
 
    list-style: none; 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 

 
.container { 
 
    margin: 0 auto; 
 
    padding: 20px 50px; 
 
    background:white; 
 
} 
 

 
#sticky-social { 
 
    left: 0; 
 
    position: fixed; 
 
    top: 50px; 
 
} 
 

 
#sticky-social a { 
 
    background: #333; 
 
    color: #fff; 
 
    display: block; 
 
    height: 35px; 
 
    font: 16px "Open Sans", sans-serif; 
 
    line-height: 35px; 
 
    position: relative; 
 
    text-align: center; 
 
    width: 35px; 
 
} 
 

 
#sticky-social a:hover span { 
 
    left: 100%; 
 
} 
 

 
#sticky-social a span { 
 
    line-height: 35px; 
 
    left: -120px; 
 
    position: absolute; 
 
    text-align:center; 
 
    width:120px; 
 
} 
 

 
#sticky-social a[class*="facebook"], 
 
#sticky-social a[class*="facebook"]:hover, 
 
#sticky-social a[class*="facebook"] span { background: #3b5998; } 
 

 
#sticky-social a[class*="twitter"], 
 
#sticky-social a[class*="twitter"]:hover, 
 
#sticky-social a[class*="twitter"] span { background: #00aced; } 
 

 
#sticky-social a[class*="gplus"], 
 
#sticky-social a[class*="gplus"]:hover, 
 
#sticky-social a[class*="gplus"] span { background: #dd4b39; } \t 
 

 
#sticky-social a[class*="linkedin"], 
 
#sticky-social a[class*="linkedin"]:hover, 
 
#sticky-social a[class*="linkedin"] span { background: #007bb6; } \t 
 

 
#sticky-social a[class*="instagrem"], 
 
#sticky-social a[class*="instagrem"]:hover, 
 
#sticky-social a[class*="instagrem"] span { background: #517fa4; } \t 
 

 
#sticky-social a[class*="stumbleupon"], 
 
#sticky-social a[class*="stumbleupon"]:hover, 
 
#sticky-social a[class*="stumbleupon"] span { background: #eb4924; } \t 
 

 
#sticky-social a[class*="pinterest"], 
 
#sticky-social a[class*="pinterest"]:hover, 
 
#sticky-social a[class*="pinterest"] span { background: #cc2127; } \t 
 

 
#sticky-social a[class*="flickr"], 
 
#sticky-social a[class*="flickr"]:hover, 
 
#sticky-social a[class*="flickr"] span { background: #ff0084; } \t 
 

 
#sticky-social a[class*="tumblr"], 
 
#sticky-social a[class*="tumblr"]:hover, 
 
#sticky-social a[class*="tumblr"] span { background: #32506d; } \t
\t <div class="container"> 
 
\t \t <h1>Social Sidebar</h1> 
 
\t \t <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium.</p> 
 
\t \t <p>Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus.</p> 
 
\t \t <p>Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis magna.</p> 
 
\t \t <p>Sed consequat, leo eget bibendum sodales, augue velit cursus nunc, quis gravida magna mi a libero. Fusce vulputate eleifend sapien. Vestibulum purus quam, scelerisque ut, mollis sed, nonummy id, metus. Nullam accumsan lorem in dui. Cras ultricies mi eu turpis hendrerit fringilla. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; In ac dui quis mi consectetuer lacinia. Nam pretium turpis et arcu. Duis arcu tortor, suscipit eget, imperdiet nec, imperdiet iaculis, ipsum.</p> 
 
\t \t <p>Sed aliquam ultrices mauris. Integer ante arcu, accumsan a, consectetuer eget, posuere ut, mauris. Praesent adipiscing. Phasellus ullamcorper ipsum rutrum nunc. Nunc nonummy metus. Vestibulum volutpat pretium libero. Cras id dui. Aenean ut eros et nisl sagittis vestibulum. Nullam nulla eros, ultricies sit amet, nonummy id, imperdiet feugiat, pede. Sed lectus. Donec mollis hendrerit risus. Phasellus nec sem in justo pellentesque facilisis. Etiam imperdiet imperdiet orci. Nunc nec neque. Phasellus leo dolor, tempus non, auctor et, hendrerit quis, nisi. Curabitur ligula sapien, tincidunt non, euismod vitae, posuere imperdiet, leo. Maecenas malesuada. Praesent congue erat at massa. Sed cursus turpis vitae tortor. Donec posuere vulputate arcu. Phasellus accumsan cursus velit. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed aliquam, nisi quis porttitor congue, elit erat euismod orci, ac</p> 
 
\t \t <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium.</p> 
 
\t \t <p>Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus.</p> 
 
\t \t <p>Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis magna.</p> 
 
\t \t <p>Sed consequat, leo eget bibendum sodales, augue velit cursus nunc, quis gravida magna mi a libero. Fusce vulputate eleifend sapien. Vestibulum purus quam, scelerisque ut, mollis sed, nonummy id, metus. Nullam accumsan lorem in dui. Cras ultricies mi eu turpis hendrerit fringilla. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; In ac dui quis mi consectetuer lacinia. Nam pretium turpis et arcu. Duis arcu tortor, suscipit eget, imperdiet nec, imperdiet iaculis, ipsum.</p> 
 
\t \t <p>Sed aliquam ultrices mauris. Integer ante arcu, accumsan a, consectetuer eget, posuere ut, mauris. Praesent adipiscing. Phasellus ullamcorper ipsum rutrum nunc. Nunc nonummy metus. Vestibulum volutpat pretium libero. Cras id dui. Aenean ut eros et nisl sagittis vestibulum. Nullam nulla eros, ultricies sit amet, nonummy id, imperdiet feugiat, pede. Sed lectus. Donec mollis hendrerit risus. Phasellus nec sem in justo pellentesque facilisis. Etiam imperdiet imperdiet orci. Nunc nec neque. Phasellus leo dolor, tempus non, auctor et, hendrerit quis, nisi. Curabitur ligula sapien, tincidunt non, euismod vitae, posuere imperdiet, leo. Maecenas malesuada. Praesent congue erat at massa. Sed cursus turpis vitae tortor. Donec posuere vulputate arcu. Phasellus accumsan cursus velit. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed aliquam, nisi quis porttitor congue, elit erat euismod orci, ac</p> 
 
\t </div> 
 
\t <aside id="sticky-social"> 
 
\t \t <ul> 
 
\t \t \t <li><a href="#" class="entypo-facebook" target="_blank"><span>Facebook</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-twitter" target="_blank"><span>Twitter</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-gplus" target="_blank"><span>Google+</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-linkedin" target="_blank"><span>LinkedIn</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-instagrem" taget="_blank"><span>Instagram</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-stumbleupon" target="_blank"><span>StumbleUpon</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-pinterest" target="_blank"><span>Pinterest</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-flickr" target="_blank"><span>Flickr</span></a></li> 
 
\t \t \t <li><a href="#" class="entypo-tumblr" target="_blank"><span>Tumblr</span></a></li> 
 
\t \t </ul> 
 
\t </aside>

0

컨테이너의 방향에 따라이 문제가 발생하므로 항목의 너비를 설정해야합니다. 이 코드를 시도 :

.fixed-icons { 
 
    position: fixed; 
 
    top:40%; 
 
    right:0; 
 
    .fixed-icons__item { 
 
    border: 1px solid white; 
 
    background-color: #004576; 
 
    color: white; 
 
    padding: 0.25rem; 
 
    margin: 0.25rem; 
 
    cursor: pointer; 
 
    margin-right:-50px; 
 
    transition: 1s; 
 
    width:80px; 
 
    &:hover { 
 
     transition: 1s; 
 
     margin-right:0; 
 

 
    } 
 
    } 
 
}
<div style="direction:rtl;"> 
 
     <div class="fixed-icons"> 
 
      <div class="fixed-icons__item fixed-icons__item--booking"> 
 
       <span>booking</span> 
 
      </div> 
 
      <div class="fixed-icons__item fixed-icons__item--voucher"> 
 
       <span>voucher</span> 
 
      </div> 
 
      <div class="fixed-icons__item fixed-icons__item--phone"> 
 
       <span>phone</span> 
 
      </div> 
 
      <div class="fixed-icons__item fixed-icons__item--eye"> 
 
       <span>eye</span> 
 
      </div> 
 
     </div> 
 
    </div>

1

이 시도, 내가

.fixed-icons { 
 
    position: fixed; 
 
    top: 40%; 
 
    right: 0; 
 
} 
 
.fixed-icons .fixed-icons__item { 
 
    border: 1px solid white; 
 
    background-color: #004576; 
 
    color: white; 
 
    padding: 0.25rem; 
 
    margin: 0.25rem; 
 
    cursor: pointer; 
 
    margin-right: -50px; 
 
    transition: 1s; 
 
} 
 
.fixed-icons .fixed-icons__item:hover { 
 
    transition: 1s; 
 
    transform: translateX(-49px); 
 
}
<!DOCTYPE html> 
 
<html > 
 
<head> 
 
    <meta charset="UTF-8"> 
 
    <title>Create a New Pen</title> 
 
    
 
    
 
    
 
     <link rel="stylesheet" href="css/style.css"> 
 

 
    
 
</head> 
 

 
<body> 
 
    <div class="fixed-icons"> 
 
    <div class="fixed-icons__item fixed-icons__item--booking"> 
 
     <span>booking</span> 
 
    </div> 
 
    <div class="fixed-icons__item fixed-icons__item--voucher"> 
 
     <span>voucher</span> 
 
    </div> 
 
    <div class="fixed-icons__item fixed-icons__item--phone"> 
 
     <span>phone</span> 
 
    </div> 
 
    <div class="fixed-icons__item fixed-icons__item--eye"> 
 
     <span>eye</span> 
 
    </div> 
 
</div> 
 
    
 
    
 
</body> 
 
</html>

+0

방금 ​​복사하여 붙여 넣은 솔루션은 모든 것이 동일합니다. 나는 그것을 표시 할 것이다. –

+0

thats 이해의 당신의 방법, 나는 그것을 위해 무엇이든을 할 수 없다 ' –

관련 문제