我正在尝试制作websites in flex
。我正面临着我的网站页面不居中的问题。我搜索了google
但尚未成功。
我正在尝试将<s:Application>
放在我的网络浏览器上,而不是从左手开始
我怎么能这样做?
答案 0 :(得分:0)
根据我的理解: -
1)您正在尝试将swf嵌入到HTML中,如果您希望swf位于HTML的中心,则必须将swf嵌入到HTML端的一个容器中。通过为其提供x,y,高度和宽度,将容器位置放在中心位置。
如果您使用的是HTML,可以通过以下方式进行: - 其中width =“400”height =“300”作为Flex应用程序swf宽度和高度或保持swf width =“100%”height =“100%” 您可以使用swf名称替换AreaChart.swf。
我认为这可以解决您的问题。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>Tittle Here</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css" media="screen">
html, body { height: 100%; margin:0; padding:0; text-align: center; }
div#centered { border:0; height: 50%; width: 50%; position: absolute; left: 25%; top: 25%; color: black; }
</style>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.registerObject("myId", "8.0.0", "expressInstall.swf");
</script>
</head>
<body>
<div id="centered">
<object id="myId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="400" height="300">
<param name="movie" value="AreaChart.swf" />
<param name="scaleMode" value="showAll" />
<param name-"quality" value="best" />
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="AreaChart.swf" width="400" height="300">
<!--<![endif]-->
<div id="altContent">
<h1>You need to upgrade your Flash player.</h1>
<p>
<a href="http://www.adobe.com/go/getflashplayer">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
</p>
</div>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
</div>
</body>
</html>
否则
2)如果您试图将Flex内容集中在Flex应用程序中,而不是创建一个容器,那么您必须移植所有逻辑,包括可视化组件等。
前: -
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" xmlns:local="*"
width="800" height="600" >
<fx:Script>
<![CDATA[
import mx.core.FlexGlobals;
private function creationComp():void
{
mainContainer.x = FlexGlobals.topLevelApplication.width/2 - mainContainer.width/2;
mainContainer.y = FlexGlobals.topLevelApplication.height/2 - mainContainer.height/2;
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<local:MainContainer id="mainContainer" width="50%" height="50%" creationComplete="creationComp()"/>
</s:Application>
MainContainer.mxml将包含所有可视组件/元素。
这可能会对你有帮助。
可能有更好的解决方案。