【问题标题】:Html form radio button not workingHtml表单单选按钮不起作用
【发布时间】:2011-05-03 18:28:10
【问题描述】:

我的 index.php 包含一堆 php 和 javascript 代码,以及用 CSS 格式化的 html。我对 CSS 不是很有经验,但我认为它不会影响这个 html 表单的可用性。这是索引代码:

<!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>Untitled</title>
    <meta name="description" content="Choose"/>
    <meta name="keywords" content="choose "/>
    <link rel="shortcut icon" href="http://i/favicon.ico"> 

    <!--[if lt IE 7]>
        <script type="text/javascript" src="FullPageBackgroundImage/js/mootools.js"></script>
        <script type="text/javascript" src="FullPageBackgroundImage/js/core.js"></script>
    <![endif]-->


<link rel="stylesheet" type="text/css" href="style.css" />

</head>

<body>

<div id="content">
<div id="poll">
<form>

<input id="ch1" type="radio" name="choice" value="0" />
<label for="ch1">
<?php echo $current['choice1']; ?>
</label>
<br />
<input id="ch2" type="radio" name="choice" value="1" />
<label for="ch2">
<?php echo $current['choice2']; ?>
</label>
</form>
</div>
hello

</div>

</body>
</html>

这是 CSS:

body {
    background-color:#000;
    background:#fff;
    background-repeat: repeat-x;
    background-attachment:fixed;
}

#top_header{
    width:100%;
    height:52px;
    background:#FFF;
    position:fixed;
    left:0px;
    top:0px;
    z-index:-1;

}

#logo{
    background-image:url('Images/web_buttons.jpg');
    position:fixed;
    top:3px;
    left:0px;
    width:366px;
    height:45px;

}

#display{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -40px;
    position:fixed;
    top:0px;
    left:420px;
    width:57px;
    height:19px;

}

#display_divider{
    background-image:url('Images/web_buttons.jpg');
    background-position: -100px -45px;
    position:fixed;
    top:0px;
    left:477px;
    width:8px;
    height:50px;    
}

a.display_single{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -80px;
    position:fixed;
    top:0px;
    left:485px;
    width:67px;
    height:26px;
}

a:hover.display_single{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -104px;
    position:fixed;
    top:0px;
    left:485px;
    width:67px;
    height:26px;
}

a.display_multiple{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -128px;
    position:fixed;
    top:26px;
    left:485px;
    width:86px;
    height:26px;
}
a:hover.display_multiple{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -152px;
    position:fixed;
    top:26px;
    left:485px;
    width:86px;
    height:26px;
}

#view{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -58px;
    position:fixed;
    top:0px;
    left:620px;
    width:37px;
    height:19px;    
}

#view_divider{
    background-image:url('Images/web_buttons.jpg');
    background-position: -100px -45px;
    position:fixed;
    top:0px;
    left:657px;
    width:8px;
    height:50px;    
}

a.view_WTFest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -178px;
    position:fixed;
    top:0px;
    left:665px;
    width:69px;
    height:26px;
}

a:hover.view_WTFest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -204px;
    position:fixed;
    top:0px;
    left:665px;
    width:69px;
    height:26px;
}

a.view_lamest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -228px;
    position:fixed;
    top:26px;
    left:665px;
    width:69px;
    height:25px;
}

a:hover.view_lamest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -253px;
    position:fixed;
    top:26px;
    left:665px;
    width:69px;
    height:25px;
}

a.view_latest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -275px;
    position:fixed;
    top:0px;
    left:734px;
    width:69px;
    height:25px;
}

a:hover.view_latest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -300px;
    position:fixed;
    top:0px;
    left:734px;
    width:69px;
    height:25px;

}

a.view_oldest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -323px;
    position:fixed;
    top:26px;
    left:734px;
    width:69px;
    height:26px;
}

a:hover.view_oldest{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -348px;
    position:fixed;
    top:26px;
    left:734px;
    width:69px;
    height:25px;

}

a.submit_choices{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -373px;
    position:fixed;
    top:3px;
    right:3px;
    width:164px;
    height:41px;
}

a:hover.submit_choices{
    background-image:url('Images/web_buttons.jpg');
    background-position: -162px -373px;
    position:fixed;
    top:3px;
    right:3px;
    width:164px;
    height:41px;

}

a.navigation_left{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -413px;
    position:fixed;
    bottom:6px;
    left:3px;
    width:134px;
    height:19px;
}

a:hover.navigation_left{
    background-image:url('Images/web_buttons.jpg');
    background-position: -134px -413px;
    position:fixed;
    bottom:6px;
    left:3px;
    width:134px;
    height:19px;
}

a.navigation_right{
    background-image:url('Images/web_buttons.jpg');
    background-position: 0px -435px;
    position:fixed;
    bottom:6px;
    right:3px;
    width:104px;
    height:19px;
}

a:hover.navigation_right{
    background-image:url('Images/web_buttons.jpg');
    background-position: -134px -435px;
    position:fixed;
    bottom:6px;
    right:3px;
    width:104px;
    height:19px;
}

/*conten*/
#content{
    position:relative;
    top:55px;
    z-index:-3;
}

这样,我只能选择第二个单选按钮,不能选择第一个。奇怪的是,如果我删除输入之间的中断,它会完美运行。或者我可以将休息时间留在那里,并在表单后面删除“helloworld”,它也可以工作。

任何人有任何想法或发现任何问题?我想将按钮放在彼此的顶部,并且我需要在下面放置其他文本..

CSS代码在这里

【问题讨论】:

  • 将问题中的代码复制并粘贴到空白的 html 文件中,然后看看它确实有效。
  • 请粘贴到您的 CSS 中
  • 这发生在哪些浏览器中?
  • 我添加了我的完整代码和 CSS,这是在 Firefox 中

标签: php html css forms radio-button


【解决方案1】:

为什么你有z-index:-3?您是在告诉浏览器将内容放在其他层之后...

【讨论】:

  • 我用上面的代码做了一个页面并做了一些测试,这行肯定是导致问题的原因。
【解决方案2】:

CSS 在这里几乎肯定有问题。看起来有一个正在被选中的子节点 (&lt;br /&gt;),而您并不是故意的。也可能发生在 Javascript 中。

【讨论】:

    猜你喜欢
    • 2011-02-10
    • 1970-01-01
    • 2015-03-11
    • 2018-01-17
    • 2020-02-02
    • 1970-01-01
    • 2013-12-27
    • 2012-06-22
    • 2012-10-28
    相关资源
    最近更新 更多