如何实现让平铺的背景图片随着浏览器窗口的大小改变而改变?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何实现让平铺的背景图片随着浏览器窗口的大小改变而改变?相关的知识,希望对你有一定的参考价值。
上面是两张图,下面那张图是上面那张小图片当做背景图片在y轴平铺后的效果,现在我想让那个y轴平铺随着浏览器窗口的大小变化,就是一直让它到达浏览器的底部,该如何实现呢?对了顺便说下,这个是做为一个框架加载的,右侧的内容是动态加载的,高度不固定,所以要求那个高度随浏览器高度变化
可以设置下背景图片的宽度和高度都是100%(自适应)。举例:
<div class="zj02" style ="width:100%;height:100%;background-image : url(image.gif);background-repeat : no-repeat;
"></div>;
此时设置的图片即可全屏幕显示。如果设置的是像素如“2000px”,可能会出现超出屏幕大小的现象,这样展示也就不美观了。 参考技术A 中间的那个线用一个网页单独显示,占用一个frame。内容用table:
关键是没有
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
这个标准。没有这个标准table的height="100%"就能跨到整个屏幕
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=utf-8" />
<TITLE>无标题文档</TITLE>
</HEAD>
<BODY>
<TABLE height="100%" cellpadding="0" cellspacing="0">
<TR>
<TD style="background:url(地址) repeat-y;"> </TD>
</TR>
</TABLE>
</BODY>
</HTML>追问
貌似我这个页面那条长竖线不能写在那个table标签里呀,还有没有别的方法 ?我是在table下面写了个div标签,弄了个背景、y轴平铺来实现的
本回答被提问者和网友采纳 参考技术B 窗体被改变 组件的长宽和窗体的长宽成比例,追问具体怎么实现???
追答不好给你说,你的是什么语言?
追问java
追答窗体被改变触发命令 组件1宽度=窗体宽度-X 组件1高度=窗体高度-X
如何让 UIPageControl 的背景颜色随着页面滑动而改变?
【中文标题】如何让 UIPageControl 的背景颜色随着页面滑动而改变?【英文标题】:How can I have the background colour of UIPageControl change along with the page swipe? 【发布时间】:2014-10-16 09:53:00 【问题描述】:我的应用首次启动时有一个教程屏幕
我希望在用户从一个页面滑动到另一个页面时更改背景颜色。基本上我有这个工作,但页面控件颜色在滑动转换完成之前不会改变。
(在这个屏幕截图中,我在页面 0 和页面 1 之间滚动以显示背景颜色的变化)
如何让页面滚动时背景颜色发生变化?
这是来自我的主视图控制器的代码 - 它在 Rubymotion 中,但您应该能够遵循它:
# ...
def page_control
page_controller.view.pageControl
end
COLORS = [UIColor.greenColor, UIColor.blueColor, UIColor.orangeColor]
def pageViewController(page_view_controller, didFinishAnimating: finished, previousViewControllers: previous_view_controllers, transitionCompleted: completed)
background_color = COLORS[page_control.currentPage % COLORS.size]
page_control.backgroundColor = background_color
end
# ...
【问题讨论】:
【参考方案1】:为什么不能直接将 UIPageControl 的 backgroundColor 设置为 clearColor?
【讨论】:
我试过了——它继承了父控制器视图的背景颜色。页面视图不与页面控件重叠 那么为什么不将页面视图重叠到控制器视图的整个高度呢?还是您已经尝试过?【参考方案2】:我遇到了同样的问题 - 我最终实现了自己的 UIPageControl
。在主视图控制器中创建一个新视图,然后将 UIPageViewController
视图和 UIPageControl
添加为子视图,并设置框架,以便页面控件显示在 pageViewController 视图的底部(或您喜欢的任何位置)。
编辑
因为UIPageViewController
被显示为另一个控制器的子视图,所以您必须在将其添加为子视图之前立即调用(从主视图控制器)[self addChildViewController:pageViewController]
。然后拨打[pageViewController didMoveToParentViewController:self]
。这确保了触摸事件等从主视图控制器传递到页面视图控制器。请参阅Apple Docs。
结束编辑
将页面控件的背景颜色设置为clearColor
,从一页到下一页的转换将发生在页面控件“后面”。然后,您可以在pageViewController didFinishAnimating
委托函数中更新页面控件(currentPage
和numberOfPages
)。如果你希望能够点击页面控件切换页面,在创建时添加合适的目标/动作方法,并使用UIPageViewController
的setViewControllers:animated:
方法触发过渡。
为确保UIPageViewController
不会同时显示页面控件,请删除presentationCountForPageViewController:
和presentationIndexForPageViewController:
的实现。
【讨论】:
这听起来很有希望 - 让我试一试并报告:) @bodacious 我意识到我应该提到另一个步骤,即添加一个视图控制器作为另一个视图控制器的子视图 - 尽管您可能已经知道。我将编辑我的答案。以上是关于如何实现让平铺的背景图片随着浏览器窗口的大小改变而改变?的主要内容,如果未能解决你的问题,请参考以下文章
CSS的盒子模型,怎么才能让盒子不会随着浏览器窗口的变化而移动或者改变大小