我正在使用jquery datepicker,但是当日历弹出窗口显示时,月份和年份文本在日历标题栏的最右侧是乱七八糟的混乱。
我和css玩了一下,但坦率地说,我没有太多时间玩它。
任何帮助都会非常感激。
我会发布问题的图片,但是在我获得10点声望(?)之前,我不会允许我使用。
HTML:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ADC Visitor Log</title>
<link href="http://code.jquery.com/ui/1.8.16/themes/redmond/jquery-ui.css" rel="stylesheet">
<!--link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" /-->
<style type="text/css">
textarea{
font: bold;
}
@media print {
@page { zoom: 93% }
}
div.footer { position: relative; }
div > span { position: absolute; right: 0; bottom: 0; }
.ui-datepicker {
width: 216px;
height: auto;
margin: 5px auto 0;
text-align: left;
font: 9pt Arial, sans-serif;
-webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
-moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
}
.ui-datepicker-title {
text-align: center;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.8.16/jquery-ui.min.js"></script>
<!--script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script-->
<script>
$(function() {
$( "#datepicker" ).datepicker();
});
function formSubmit(val){
var dp = document.getElementById("datepicker").value;
var fp = document.getElementById("floor").value;
var op = document.getElementById("officer").value;
if(!dp.length==0){
if(!fp.length==0){
if(!op.length==0){
//alert("still made it thru");
document.getElementById("frm1").action = "VL2";
document.getElementById("frm1").method = "POST";
document.getElementById("frm1").submit();
}
}
}
}
</script>
</head>
<body>
<h1 align="center">VISITOR LOG</h1>
<br>
<br>
<div align="center">
<h3>Please set visitor log data:</h3>
<br>
<br>
<form id="frm1" action="VL2" method="POST">
<div style="background-color: gray">
<table>
<tr style="width: 100%">
<td width="33%" align="center">
<label>Floor:
<select style="vertical-align: center;" name="floor" id="floor">
<option>Select Floor</option>
<option value="2nd">2nd</option>
<option value="4th">4th</option>
<option value="6th">6th</option>
</select>
</div>
</td>
<td><input type="hidden" name="type" value="initial" size="0" /></td>
<td width="33%" align="center">
Date: <input type="text"
name="datepicker" id="datepicker"
style="background-color: #f5ffff; border: none;"/>
</td>
<td width="33%" align="center">
<label>Officer:
<input name="officer" id="officer" size="40"
style="background-color: #f5ffff; border: none;"/>
</td>
</tr>
</table>
</div>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<div style="width: 100%; height: 30%; vertical-align: middle">
<input align="center" type="button" onclick="formSubmit()" value="Submit">
</div>
</form>
</div>
</body>
答案 0 :(得分:0)
正是这一系列的CSS导致了你的问题:
div > span { position: absolute; right: 0; bottom: 0; }
删除此项并再次正确显示日历。
您的选择器目前过于通用(因此它会占据div的直接子节点的每个范围),并且应该重写以更具体地针对您的预期用途。
请参阅此处删除的CSS行:http://jsfiddle.net/YkdZ4/1/
看起来你正在使用该线将灰色条中的所有内容对齐到底部,这是正确的吗?既然你正在使用一个表,你可以在父单元格上使用valign =“bottom”来获得你所追求的效果,而不需要上面包含无所不包的CSS行。
在此虚构中查看更新后的HTML标记(以及删除的CSS行):http://jsfiddle.net/YkdZ4/2/
答案 1 :(得分:0)
从代码下方移除位置:绝对
div > span { position: absolute; right: 0; bottom: 0; }