我正在创建一个带有几个链接的浮动菜单,我应用了一个css来垂直旋转(-90deg) 但是高度超过了预期,我怎么能减少呢?我也希望删除每个链接之间的空格。
-webkit-transform: rotate(-90deg);
margin-top:0px;
font-size: 14px;
width:96px;
padding: 0 0 0 0;
height: 98%;
答案 0 :(得分:0)
您可能希望使用媒体查询来实现此目的。你可以在下面找到一个简单的例子。只需设置您希望更改发生的所需分辨率,并定义您想要受影响的类和样式。
这是一个关于媒体查询的精彩链接,可以帮助您入门:
http://css-tricks.com/css-media-queries/
如果您有兴趣了解更多关于响应的信息,这本书不会让您失望。超级快速阅读,它将回答您关于响应的所有问题:
http://www.abookapart.com/products/responsive-web-design
CSS
@media all and (max-width : 800px) {
#menu > a{
width: 50px;
font-size:100%;
}
}
答案 1 :(得分:0)
您需要将explicite width
和height
设置为<a>
,将文本换行到您旋转的另一个容器中并将其翻译回来。
要删除inline-block
元素中的空格,您可以在#menu设置font-size:0;
,因为您设置了font-size:<a>
,font-size会减少您的white-space
HTML代码中的1}}无法看到。
<强> DEMO 强>
#menu > a {
overflow:visible;
margin-top:0px;
font-size: 14px;
width:40px;
padding: 0 0 0 0;
text-decoration: none;
text-align: center;
vertical-align: middle;
display: inline-block;
font-family: Tahoma, Geneva, sans-serif;
}
#menu>a>span, #menu>a {
height:60px;
line-height:60px;
min-width:60px;
}
#menu>a>span {
float:left;
padding:0 5px;
margin-right:-5em;/* remove this if you do not want see span overflow; */
box-shadow:inset 0 0 0 1px black;
transform: rotate(-90deg) translatex(-60px);
transform-origin: top left;
background: rgba(153, 153, 153, .8);
color: rgba(255, 255, 255, 1);
}
和链接形成如下<a href="#"><span>Item</span></a>
。
答案 2 :(得分:0)
好吧,当你旋转物品时,你的身高&#34;身高&#34;实际上是你的 width 声明。
不幸的是,从您使用百分比构建高度/宽度的方式来看,您实际上无法达到您想要的效果,因为现在可以告诉孩子元素是它的某个百分比。 父母的身高,这是您的目标(a
的宽度应该是#menu
&#39的100% ;高度)。
如果你愿意,还有一些你可以做的事情:
#menu {overflow:hidden;}
隐藏孩子的多余部分。这是一个简单的黑客,而不是一个真正的修复。box-sizing
更改为border-box
。rem
将宽度/高度硬编码为不同的响应练习而不是百分比真的,您需要做的就是确保您的孩子的宽度与菜单的高度相同,但是您想要解决的问题取决于您,但流体百分比不会起作用好。
答案 3 :(得分:0)
负边距和硬编码高度解决了这个问题!
#menu
{height:100px;}
#menu > a {
-webkit-transform: rotate(-90deg);
font-size: 100%;
padding: 0 0 0 0;
height: 40px;
position:relative;
margin-left:-30px;
margin-right:-30px;
bottom:-30px;}