- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试设计锦标赛支架的视觉效果,但它们并没有很好地结合在一起!!
CSS如下:
#tournament-holder{
width:708px;
padding:20px 0 20px 15px;
float:left;
}
.vertical-holder{
width:100px;
padding-right:15px;
float:left;
}
.horizontal-holder1{
width:98px;
height:98px;
margin-bottom:15px;
border:1px solid #bdbdbd;
float:left;
}
.horizontal-holder2{
width:98px;
height:98px;
margin:57.5px 0 72.5px 0;
border:1px solid #bdbdbd;
float:left;
}
.horizontal-holder3{
width:98px;
height:98px;
margin:172.5px 0 187.5px 0;
border:1px solid #bdbdbd;
float:left;
}
.horizontal-holder4{
width:98px;
height:98px;
margin:402.5px 0 417.5px 0;
border:1px solid #bdbdbd;
float:left;
}
.horizontal-holder5{
width:98px;
height:98px;
margin:862.5px 0 877.5px 0;
border:1px solid #bdbdbd;
float:left;
}
.horizontal-holder6{
width:98px;
height:98px;
margin:1782.5px 0 1797.5px 0;
border:1px solid #bdbdbd;
float:left;
}
.white-holder{
width:98px;
height:49px;
background-color:white;
float:left;
}
.yellow-holder{
width:98px;
height:49px;
background-color:#FFF8DC;
float:left;
}
.player-holder{
width:70px;
height:49px;
float:left;
}
.score-holder{
width:28px;
height:49px;
float:left;
}
现在是 HTML:
<div id="tournament-holder">
<div class="vertical-holder">
<?php
$q = "SELECT u.username, p.position FROM ".TBL_FOOT_TOUR_PLAYERS." p
INNER JOIN ".TBL_USERS." u ON p.userid = u.id
WHERE p.tourid = '$tour_id' ORDER BY position";
$result = $database->query($q);
$i = 1;
while($row=mysql_fetch_assoc($result)){
extract($row);
if($i&1){
?>
<div class="horizontal-holder1">
<div class="white-holder">
<div class="player-holder">
<? echo "$username"; ?>
</div>
<div class="score-holder">
0
<div>
</div>
<?php
}
else{
?>
<div class="yellow-holder">
<div class="player-holder">
<? echo "$username"; ?>
</div>
<div class="score-holder">
0
<div>
</div>
</div>
<?php
}
$i++;
}
?>
</div>
<?php
//subsequent rounds
for($i=1; $i <= $rounds; $i++)
{
$j = $i + 1; //this is to generate the correct horizontal holder
$k = 1; //this is the order of the players - to check if they are odd or even as they come out.
$players = $players / 2;
$q = "SELECT u.username, r.position FROM ".TBL_FOOT_TOUR_ROUNDS." r
INNER JOIN ".TBL_USERS." u ON u.id = r.winner
WHERE tourid = '$tour_id' && round = '$i' ORDER BY position";
$result = $database->query($q);
?>
<div class="vertical-holder">
<?php
while($row=mysql_fetch_assoc($result)){
extract($row);
if($k&1){
?>
<div class="horizontal-holder<?php echo $j; ?>">
<div class="white-holder">
<div class="player-holder">
<? echo "$username"; ?>
</div>
<div class="score-holder">
0
<div>
</div>
<?php
}
else{
?>
<div class="yellow-holder">
<div class="player-holder">
<? echo "$username"; ?>
</div>
<div class="score-holder">
0
<div>
</div>
</div>
<?php
}
$k++;
}
?>
</div>
<?php
}
?>
</div>
以下是支架当前呈现的内容的链接:
很明显,有些地方没有正确排列。
括号的想法是“tournament-holder”将包含整个括号。每轮都会有一个“垂直持有人”......每个垂直持有人将包含每 2 支球队(1 个固定装置)的水平持有人。随着比赛越来越远,6 个不同的水平支架适用于固定装置之间的不同间距。在每个水平支架中,都会有一个黄色或白色的支架。两者是一样的,只是背景颜色不同。每一个里面都有一个球员和得分持有者。
我知道这是一个非常复杂的问题,但可以回答这个问题吗?我遇到了重大问题,无法解决。
谢谢 :)
最佳答案
我已经完成了几个这样的图形,并且曾经拥有一个网络运动队/联赛管理软件。为此,您需要首先在内存中准备您的结构,而不仅仅是查询和循环。
$structure = array();
$data = mysql_query('SELECT * FROM standings WHERE blablabla');
while($datarow = mysql_fetch_assoc($data)){
//Evaluate the round in the first level and the match in second
$round = $datarow['round'];
$matchid = $datarow['round'];
$homeorvisitor = ($datarow['ishome'] ? 'home' : 'visitor');
$structure[$round][$mathid][$homeorvisitor] = $datarow;
}
这将为您创建一个结构,您可以在其中找到您的比赛以及每场比赛的每个对手分组在回合中。
然后,使用简单的循环逻辑,您可以创建一个包含每一轮比赛的表格,并在每个表格中创建一个显示比赛的 div。我喜欢为此使用表格,但如果你对 CSS 足够好,那就用 CSS 吧。我在这里尝试使用 div,使用简单的 CSS 应该可以正常输出。
foreach($structure as $roundkey => $round){
?><div id="round<?php echo $roundkey; ?>" class="round"><?php
foreach($round as $matchid => $match){
?><div id="match<?php echo $matchid; ?>" class="match round<?php echo $roundkey; ?>"><?php
//Output your match box content here
?></div><?php
}
?></div><?php
}
这应该输出你
<div id="round1" class="round">
<div id="match1" class="match round1">
</div>
<div id="match2" class="match round1">
</div>
<div id="match3" class="match round1">
</div>
<div id="match4" class="match round1">
</div>
</div>
<div id="round2" class="round">
<div id="match5" class="match round2">
</div>
<div id="match6" class="match round2">
</div>
</div>
<div id="round3" class="round">
<div id="match7" class="match round3">
</div>
</div>
我建议的 CSS 是使圆具有一定的宽度,并排 float ,并且每个匹配项都将采用特定的高度和宽度,具体取决于与其关联的圆#。这样一来,您就可以使第 1 轮中的一场火柴比第 2 轮中的一场火柴小(取两倍高度使其居中。
这一切都有意义吗?
关于php - 设计比赛支架 - 不能很好地组合在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8804882/
下类时合上笔记本电脑。当我回到家并打开它时,它已重新启动。现在,当我打开 Titanium Developer 时,它会立即崩溃。 所以我现在也打不开。关于如何调试或找出问题所在的任何想法? 甚至尝试
我们想共享运行时项目二进制文件。所以每个团队成员都可以使用当前的工作版本。 在 SVN 中存储运行时二进制文件是否可以接受/很好? 最佳答案 不,不要将二进制文件存储在其源代码旁边(除非您有充分的理由
我在 PHP 中使用循环来显示 CMS 管理部分中的用户数据。每行(用户)都包含一些我想要连接到命令的图标(例如:编辑、删除等)。表的最后一行有空的输入字段,带有单个图标(命令),以允许添加新用户。这
如果这是一个新手问题,请原谅我,我昨天开始学习 Django,并且我尽量不要养成坏习惯,即我试图从一开始就以“django 方式”做事。 我有一个 View 接收二进制数据作为 http post 字
使用 swift 2.1 我正在寻找一种将非可选类型数组分配给可选类型数组的好方法,其中类型相同。这是我尝试过的一些方法: var foos: [Int?] = [] let bars: [Int]
James Gosling,加拿大计算机科学家,完成了 Java 的原始设计,并实现了 Java 最初版本的编译器和虚拟机,也是公认的 “Java 之父”。 Evrone 是一家企业软件开发公司,
我在两个项目上使用 Twitter Bootstrap,一个是静态 HTML 网站,另一个是 Rails 应用程序。当我在桌面浏览器上测试网站时,调整大小有效。但是当我在手机 [Nokia E72]
我可以使用全日历。但我有一个侧边栏,用户可以折叠它,然后内容框会变大,但是当用户这样做时,日历就不那么好了。 所以我正在考虑窗口调整大小功能,但这仅在浏览器窗口更改时才有效,那么当容器变大或变小时如何
我正在尝试使用 C# 和 LINQ 在数据库中查询每日活跃用户。我有一个运行良好的 SQL 查询。它在 u.UserId).Distinct().Count() } 测试后,当我必须选择 (
我目前正在开发部署目标为 7.1 的 iOS 应用程序。我的大部分测试都是在 iOS8 环境中执行的,没有任何问题。我连接了一个 iOS7 (5s) 测试设备,发现通过手机显示的 View 是 3.5
我有这样的代码: Floating left. Floating right. BlahBlah Container 允许我将页脚推到页面底部,但如果我想让左右栏跨越接触页脚的高度
从 PHP4 和 Cake 1.3 开始,我一直在使用 debug($data);在 CakePHP 中调试诸如模型输出之类的东西。 但是,自从升级到 PHP5.4 后,我注意到 debug($dat
我在Canvas上画我的游戏,一切都是上帝,但我把它改成了JPanel,但现在它不能正常工作,这是代码,你可以复制它们,你就会看到问题出在哪里(我有一个菜单,单击按钮后它应该创建新线程,我想在那里画画
我尝试用 scrapy 抓取一页。我用 FireXpath(一个 firefox 插件)找到了 xpath,它看起来不错。但是对于 Scrapy,我没有得到任何结果。 我的 python 程序如下所示
我想在页面加载时加载 fancybox。它工作正常,但我对它的高度有疑问。假设页面的高度为 3000px,而 fancybox 的高度为 1500px。如果你想看到页面的最低部分,都应该向下滚动。不幸
IE 大小调整问题!?代码非常简单:我有一个 div,我想要一个占 DIV 100% 的文本框。它必须显示 div 的红线(如果我使用 height:100%, width:100% 它会侵 ecli
我有一组看起来像这样的代码: if(self.property == A) { [self.infoManager getThingA:^(NSString *thing, NSError *
我认为 git clone 使用 STDERR。 我现在想将它重定向到 STDOUT 以使用此 hack . 我遇到了一些问题(另外,我使用很棒的 stderred 库自动将 STDERR 着色为红色
我的问题是我的表单正在提交(到节点/express api),如果我console.log req.body(@ api),结果是一个空对象。但是,如果我在客户端上 console.log ,则序列化
我对 addon-sdk 还很陌生,并且遇到了一个对我来说无法解释的问题。到目前为止,我一直在使用 jpm run 来测试一切 - 并且一切都很好。现在,我即将完成我想要完成的任务,所以我想在“普通”
我是一名优秀的程序员,十分优秀!