我正在使用Anything Slider,我无法以相同的尺寸显示图像。我正在使用5个不同尺寸的图像。它们也不会居中在视口中。
我已经尝试在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;
}
答案 0 :(得分: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'));
更新:要调整窗口大小,请在整个滑块周围添加包装器,设置其最大尺寸大小,然后包含expand
和aspectRatio
选项(updated demo):
CSS
.wrapper {
width: 100%;
height: 500px;
}
修改过的脚本
$('#slider3')
.anythingSlider({
expand: true,
aspectRatio : 600/350
})