2014-01-27 63 views
1

我使用任何滑塊,我無法讓圖像顯示在相同的大小。我使用了5張不同尺寸的圖片。他們也不會在視口中居中。任何滑塊 - 使用圖像不同大小w /標題

我已經嘗試將它們全部調整爲在html中的大小相同,並且還更改了css中的元素,但我失去了處理此問題的最佳方法。我嘗試了所有我能想到的東西,但我錯過了一些東西。我還是新手編程,所以任何指導將不勝感激。 http://themusicshop.com/defaultdave3.aspx

這裏的小提琴 - http://jsfiddle.net/5Kvf5/

HTML:

<ul id="slider3">  
    <li><a href="summer2008.asp"><img src="http://www.themusicshop.com/images/FinnianRainbowWeb.jpg" alt="" width="400" height="250"></a><div class="caption-bottom">Sing-Dance-Act & Much More!</div></li>   
    <li><a href="thedailyjoe.asp"><img src="http://www.themusicshop.com/images/DailyJoeBanner.jpg" alt="" width="400" height="250"></a><div class="caption-bottom">Now Serving Breakfast & Lunch</div></li> 
    <li><a href="plessons.asp"><img src="http://www.themusicshop.com/images/LessonsBanner.jpg" alt="" width="400" height="250"></a><div class="caption-bottom">Private Lessons for All Ages - All Instruments!</div></li> 
    <li><a href="aeRntplan.aspx"><img src="http://www.themusicshop.com/images/RentalBanner.jpg" alt="" width="400" height="250"></a><div class="caption-bottom">Rent Online in 4 Easy Steps</div></li>    
    <li><a href="t-store.aspx"><img src="http://www.themusicshop.com/images/StoreBanner.jpg" alt="" width="400" height="250"></a><div class="caption-bottom">Shop Online</div></li> 

</ul> 

CSS:

/* 
AnythingSlider v1.8+ Default theme 
By Chris Coyier: http://css-tricks.com 
with major improvements by Doug Neiner: http://pixelgraphics.us/ 
based on work by Remy Sharp: http://jqueryfordesigners.com/ 
    */ 

/***************************** 
    SET DEFAULT DIMENSIONS HERE 
*****************************/ 
/* New in version 1.7+ */ 
#slider3, slider3 li { 
    width: 600px; 
    height: 350px; 
    list-style: none; 
} 
/* images with caption */ 
#slider3 img { 
    width: 100%; 
    height: 100%; 
} 
/* position the panels so the captions appear correctly */ 
#slider3 .panel { position: relative; } 
/* captions */ 
#slider3 .caption-top, #slider3 .caption-right, 
#slider3 .caption-bottom, #slider3 .caption-left { 
    background: #000; 
    color: #fff; 
    padding: 10px; 
    margin: 0; 
    position: relative; 
    z-index: 10; 
    opacity: 0.65; 
    filter: alpha(opacity=80); 
} 
/* Top caption - padding is included in the width (480px here, 500px in the script), same for height */ 
#slider3 .caption-top { 
    left: 0; 
    top: 0; 
    width: 580px; 
    height: 30px; 
} 
/* Right caption - padding is included in the width (130px here, 150px in the script), same for height */ 
#slider3 .caption-right { 
right: 0; 
bottom: 0; 
width: 130px; 
height: 180px; 
} 
/* Bottom caption - padding is included in the width (480px here, 500px in the script), same for height */ 
#slider3 .caption-bottom { 
    left: 0; 
    bottom: 0; 
    width: 580px; 
    height: 30px; 
} 
/* Left caption - padding is included in the width (130px here, 150px in the script), same for height */ 
#slider3 .caption-left { 
    left: 0; 
    bottom: 0; 
    width: 130px; 
    height: 180px; 
} 
/* Caption close button */ 
.caption-top .close, .caption-right .close, 
.caption-bottom .close, .caption-left .close { 
    font-size: 80%; 
    cursor: pointer; 
    float: right; 
    display: inline-block; 
} 

/****************** 
    SET STYLING HERE 
****************** 
================================= 
Default state (no keyboard focus) 
==================================*/ 
/* Overall Wrapper */ 
.anythingSlider-default { 
margin: 0 auto; 
/* 45px right & left padding for the arrows, 28px @ bottom for navigation */ 
padding: 0 45px 28px 45px; 
} 
/* slider window - top & bottom borders, default state */ 
.anythingSlider-default .anythingWindow { 
border-top: 3px solid #777; 
border-bottom: 3px solid #777; 
} 
/* Navigation buttons + start/stop button, default state */ 
.anythingSlider-default .anythingControls a { 
/* top shadow */ 
background: #777 url(../images/default.png) center -288px repeat-x; 
color: #000; 
border-radius: 0 0 5px 5px; 
-moz-border-radius: 0 0 5px 5px; 
-webkit-border-radius: 0 0 5px 5px; 
} 
/* Make sure navigation text is visible */ 
.anythingSlider-default .anythingControls a span { 
visibility: visible; 
} 
/* Navigation current button, default state */ 
.anythingSlider-default .anythingControls a.cur { 
background: #888; 
color: #000; 
} 
/* start-stop button, stopped, default state */ 
.anythingSlider-default .anythingControls a.start-stop { 
background-color: #040; 
color: #ddd; 
} 
/* start-stop button, playing, default state */ 
.anythingSlider-default .anythingControls a.start-stop.playing { 
background-color: #800; 
} 
/* start-stop button, default hovered text color (when visible) */ 
/* hide nav/start-stop background image shadow on hover - makes the button appear to come forward */ 
.anythingSlider-default .anythingControls a.start-stop:hover, .anythingSlider-default  .anythingControls a.start-stop.hover, .anythingSlider-default .anythingControls a.start-stop .anythingControls ul a:hover { 
background-image: none; 
color: #ddd; 
} 
/* 
================================= 
Active State (has keyboard focus) 
================================= 
*/ 
/* slider window - top & bottom borders, active state */ 
.anythingSlider-default.activeSlider .anythingWindow { 
border-color: #7C9127; 
} 
/* Navigation buttons, active state */ 
.anythingSlider-default.activeSlider .anythingControls a { 
/* background image = top shadow */ 
background-color: #7C9127; 
} 
/* Navigation current & hovered button, active state */ 
.anythingSlider-default.activeSlider .anythingControls a.cur, .anythingSlider- default.activeSlider .anythingControls a:hover { 
/* background image removed */ 
background: #7C9127; 
} 
/* start-stop button, stopped, active state */ 
.anythingSlider-default.activeSlider .anythingControls a.start-stop { 
background-color: #080; 
color: #fff; 
} 
/* start-stop button, playing, active state */ 
.anythingSlider-default.activeSlider .anythingControls a.start-stop.playing { 
background-color: #d00; 
color: #fff; 
} 
/* start-stop button, active slider hovered text color (when visible) */ 
.anythingSlider-default.activeSlider .start-stop:hover, .anythingSlider- default.activeSlider .start-stop.hover { 
color: #fff; 
} 
/************************ 
    NAVIGATION POSITIONING 
************************/ 
/* Navigation Arrows */ 
.anythingSlider-default .arrow { 
top: 50%; 
position: absolute; 
display: block; 
} 
.anythingSlider-default .arrow a { 
display: block; 
width: 45px; 
height: 140px; 
margin: -70px 0 0 0; /* half height of image */ 
text-align: center; 
outline: 0; 
background: url(../images/default.png) no-repeat; 
} 
/* back arrow */ 
.anythingSlider-default .back { 
left: 0; 
} 
.anythingSlider-default .back a { 
background-position: left top; 
} 
.anythingSlider-default .back a:hover, .anythingSlider-default .back a.hover { 
background-position: left -140px; 
} 
/* forward arrow */ 
.anythingSlider-default .forward { 
right: 0; 
} 
.anythingSlider-default .forward a { 
background-position: right top; 
} 
.anythingSlider-default .forward a:hover, .anythingSlider-default .forward a.hover { 
background-position: right -140px; 
} 
/* Navigation Links */ 
.anythingSlider-default .anythingControls { 
outline: 0; 
display: none; 
} 
.anythingSlider-default .anythingControls ul { 
margin: 0; 
padding: 0; 
float: left; 
} 
.anythingSlider-default .anythingControls ul li { 
display: inline; 
} 
.anythingSlider-default .anythingControls ul a { 
font: 11px/18px Georgia, Serif; 
display: inline-block; 
text-decoration: none; 
padding: 2px 8px; 
height: 18px; 
margin: 0 5px 0 0; 
text-align: center; 
outline: 0; 
} 
/* navigationSize window */ 
.anythingSlider-default .anythingControls .anythingNavWindow { 
overflow: hidden; 
float: left; 
} 
/* Autoplay Start/Stop button */ 
.anythingSlider-default .anythingControls .start-stop { 
padding: 2px 5px; 
width: 40px; 
text-align: center; 
text-decoration: none; 
float: right; 
z-index: 100; 
outline: 0; 
} 
/*********************** 
    IE8 AND OLDER STYLING 
***********************/ 

/* Navigation Arrows */ 
.as-oldie .anythingSlider-default .arrow { 
top: 30%; 
} 
.as-oldie .anythingSlider-default .arrow a { 
margin: 0; 
} 
/* margin between nav buttons just looks better */ 
.as-oldie .anythingSlider-default .anythingControls li { 
margin-left: 3px; 
} 
/* When using the navigationSize option, the side margins need to be zero 
None of the navigation panels look good in IE7 now =(*/ 
.as-oldie .anythingSlider-default .anythingControls a { 
margin: 0; 
} 
.as-oldie .anythingSlider-default .anythingNavWindow { 
margin: 0 2px; 
} 
.as-oldie .anythingSlider-default .anythingNavWindow li { 
padding: 3px 0 0 0; 
} 
/*********************** 
    COMMON SLIDER STYLING 
***********************/ 
/* Overall Wrapper */ 
.anythingSlider { 
display: block; 
overflow: visible !important; 
position: relative; 
} 
/* anythingSlider viewport window */ 
.anythingSlider .anythingWindow { 
overflow: hidden; 
position: relative; 
width: 100%; 
height: 100%; 
} 
/* anythingSlider base (original element) */ 
.anythingSlider .anythingBase { 
background: transparent; 
list-style: none; 
position: absolute; 
overflow: visible !important; 
top: 0; 
left: 0; 
margin: 0; 
padding: 0; 
} 
/* Navigation arrow text; indent moved to span inside "a", for IE7; 
    apparently, a negative text-indent on an "a" link moves the link as well as the text */ 
.anythingSlider .arrow span { 
display: block; 
visibility: hidden; 
} 
/* disabled arrows, hide or reduce opacity: opacity: .5; filter: alpha(opacity=50); */ 
.anythingSlider .arrow.disabled { 
display: none; 
} 
/* all panels inside the slider; horizontal mode */ 
.anythingSlider .panel { 
background: transparent; 
display: block; 
overflow: hidden; 
float: left; 
padding: 0; 
margin: 0; 
} 
/* vertical mode */ 
.anythingSlider .vertical .panel { 
float: none; 
} 
/* fade mode */ 
.anythingSlider .fade .panel { 
float: none; 
position: absolute; 
top: 0; 
left: 0; 
z-index: 0; 
} 
/* fade mode active page - visible & on top */ 
.anythingSlider .fade .activePage { 
z-index: 1; 
} 
/*********************** 
    RTL STYLING 
***********************/ 
/* slider autoplay right-to-left, reverse order of nav links to look better */ 
.anythingSlider.rtl .anythingWindow { 
direction: ltr; 
unicode-bidi: bidi-override; 
} 
.anythingSlider.rtl .anythingControls ul { 
float: left; 
} /* move nav link group to left */ 
.anythingSlider.rtl .anythingControls ul a { 
float: right; 
} /* reverse order of nav links */ 
.anythingSlider.rtl .start-stop { /* float: right; */ 
} /* move start/stop button - in case you want to switch sides */ 
/* probably not necessary, but added just in case */ 
.anythingSlider, .anythingSlider .anythingWindow, .anythingSlider .anythingControls ul a,  .anythingSlider .arrow a, .anythingSlider .start-stop { 
transition-duration: 0s; 
-o-transition-duration: 0s; 
-moz-transition-duration: 0s; 
-webkit-transition-duration: 0s; 
} 

回答

1

我不是100%肯定,你想要什麼,但在this demo中,圖像居中(未調整大小):

HTML模板

<ul id="slider3"> 
    <li> 
     <div> 
      <a href="page1.asp"> 
       <img src="image1.jpg" alt="" width="400" height="250"> 
      </a> 
      <div class="caption-bottom">Caption 1</div> 
     </div> 
    </li> 
    ... 
</ul> 

CSS(居中圖像)

/* 
    centering css from here: 
    http://css-tricks.com/centering-in-the-unknown/ 
*/ 
ul#slider3 div { 
    text-align: center; 
} 
ul#slider3 div:before { 
    content:''; 
    display: inline-block; 
    height: 100%; 
    vertical-align: middle; 
} 
ul#slider3 img { 
    display: inline-block; 
    vertical-align: middle; 
} 

腳本

showCaptions = function ($this) { 
    $this.find('.caption-bottom') 
     .show() 
     .animate({ 
      bottom: 0, 
      opacity: 1 
     }, 400); 
}; 
hideCaptions = function ($this) { 
    $this.find('.caption-bottom') 
     .stop() 
     .animate({ 
      bottom: -50, 
      opacity: 0 
     }, 350, function() { 
      $this.find('.caption-bottom').hide(); 
     }); 
}; 

$('#slider3') 
    .anythingSlider() 
    /* this code will make the caption appear when you hover over the panel 
    remove the extra statements if you don't have captions in that location */ 
    .find('.panel') 
    .find('div[class*=caption]').css({ 
     position: 'absolute' 
    }).end() 
    .hover(function() { 
     showCaptions($(this)) 
    }, function() { 
     hideCaptions($(this)); 
    }); 

// hide all captions initially 
hideCaptions($('#slider3 .panel')); 

更新:調整窗口大小,添加圍繞整個滑塊的包裝,設置其最大尺寸大小,然後包括expandaspectRatio個選項(updated demo):

CSS

.wrapper { 
    width: 100%; 
    height: 500px; 
} 

修改腳本

$('#slider3') 
    .anythingSlider({ 
     expand: true, 
     aspectRatio : 600/350 
    }) 
+0

謝謝。這更接近我想要的。我希望圖像適合整個視口的大小,而不管大小。 – user3191438

+0

好吧,嘗試更新 – Mottie

+0

好的,我做了這些改變......添加了一個包裝器,並將expand擴展爲true,並給出了aspectRatio數字,但現在我的圖像根本不出現。 http://themusicshop.com/defaultdave3.aspx – user3191438