0

基本上,我正在创建一个未知大小的复选框,该复选框取决于从我的数据库中的表中选择的行。我不知道大小的原因是用户选择了他们将使用的行,其中一些行包含将成为 10 个复选框的行,而其他行包含多达 75 个。所以问题是,如果用户选择的行包含大量选项它穿过我的 div 的边框,然后迫使我向下滚动页面我正在寻找的是一种说法 >

if(复选框数量 >25 )

在我的页面上创建一个新列

我不知道解决这个问题的正确方法是使用 php 还是 javascript 或者可能使用 css 我对所有这些语言都是新手,所以无论多么微不足道的任何帮助都会非常感激。

<div id="major1">
<?php   
        $courses=mysql_query("SELECT * FROM MAJORS_CHECKLIST WHERE MAJOR='$major'");
        $courses_row=mysql_fetch_row($courses);
        $count = 0;
        echo "$courses_row[0] <br/>";
        $checkit = 0;
        $sidebyside = 0;
        foreach($courses_row as $i=>$courses_row){
            if($courses_row['$count'] == NULL)
            {
                break;//if we run out of courses stop printing them

            }
            if($courses_row[$count] == $courses_row[0] && $checkit == 0 )
            {

                $checkit = $checkit + 1;
            }
            else
            {       
                echo "<input type='checkbox' value='$courses_row' name='majorCourses[]' />&nbsp;";//answer-$i
                echo "$courses_row<br /> ";

            }
            $count = $count + 1;
            /*$sidebyside++;
            if($sidebyside == 2)//tried using this to put 2 checkboxes side by side that ened up just messing everything up 
            {
                echo "<br/>";
                $sidebyside = 0;
            }*/ 
        }

?>

这是我的CSS:

   #major1{
color: white;
/*border: 1px solid black;*/
padding: 5px;
float: left;
height:500px;
width:150px;
}
4

1 回答 1

2

可以使用 CSS 控制在 div 中生成一堆复选框。应将复选框的父 div 设置为以下规则:width:auto; 高度:自动;填充:10px 10px;位置:相对;这一切都假设复选框的父 div 是另一个 div 的子级来控制首选尺寸

编辑:如果您不想通过上述方法使用 css,您可以控制每行复选框的“X”数量。您可以创建一个计数器来计算正在显示的数量并执行 if($counter % X == 0) echo " </div><div>"; 这一切都假设您在代码的开头有一个起始 div,在代码的末尾有一个结束 div。

于 2012-11-22T02:45:34.313 回答