2013-02-22 63 views
0

正如我们平时看到的,hgroup的也许这样位置与CSS元素

h1 
h2 
h3 
... 

但在我的情况下的结构中,H3是第一位的H2,我们有这样的事情:

h3 
h2 

但我又必须遵循的设计,我必须样式为H2是第一位的:

h2 
h3 

为了便于图像,请查看这里: http://cdpn.io/dfnjo

我选择使用位置,它的工作,但我不满足,因为我无法控制编辑器将放置多少文本,所以如果h2有很多文本,它可能会重叠文本h3。(请尝试为h2添加更多文本)。

请告诉我没有Javascript,只是CSS!

感谢

+0

有没有一些方法来计算字符或获得元素宽度只使用css – grigno 2013-02-22 11:04:45

+1

我真的不认为你所问的是可能的CSS。你想在页面上移动未知数量的CSS元素?你可能需要JS来做这件事,或者你需要重新设计你的逻辑。 – James 2013-02-22 11:05:10

+0

我想改变结构,如果我可以也不需要使用这些元素的位置,但结构是由其他人修复的,我没有任何权限在这里使用Javascript。所以如果我知道文本的数量,因为h2最多有两行文本,h3最多有三行文本,我们在这里有任何方法吗? – 2013-02-22 11:13:10

回答

-1
$("h2").insertBefore($("h2").prev()); 

,或者如果他们不来,从而,

$("h2").insertBefore($("h3")); 
+0

结构是固定的,我不能改变它,我也不能在这里使用脚本... – 2013-02-22 11:04:47

+1

阅读OP的帖子 - 他明确指定没有JavaScript。 – 2013-02-22 11:05:13

+0

他在我的回答后明确地编辑了它,因为我读了几次,我不明白这个问题。无论如何,我很抱歉。我想不出任何改变没有JavaScript的HTML结构。 Css将只与位置一起工作,就像你说的你无法控制内容和高度一样。 – user1695981 2013-02-22 11:12:05

0

你不能这样做与CSS这种情况下,因为CSS还没有if-else语句。

但有一种方法可以应用if-else语句和SASS(SCSS)。关于它的研究,它提供了使用函数,while语句等变量。但它不能改变html元素嵌套列表。

+0

我只是使用纯CSS,没有SASS或LESS,但感谢您的帮助,我会在这里留下这个问题。 – 2013-02-25 02:36:48