我有一个简单的网页,其中包含一些以页面为中心的Lipsum内容.该页面在Chrome和Firefox中运行良好.如果我缩小窗口的大小,内容将填充窗口,直到它不能,然后添加滚动条并将内容从屏幕填充到底部.
但是,该页面不在IE11中.我可以通过弯曲身体让页面在IE中居中,但是如果我这样做,那么内容开始从屏幕上移到顶部并切断内容的顶部.
以下是两种情况.查看相关的小提琴.如果问题不明显,请减小结果窗口的大小,以便强制生成滚动条.
注意:此应用程序仅针对最新版本的Firefox,Chrome和IE(IE11),它们都支持Flexbox的候选推荐标准,因此功能兼容性不应成为问题(理论上).
编辑:使用全屏API全屏显示外部div时,所有浏览器都使用原始CSS正确居中.但是,在离开全屏模式时,IE将恢复为水平居中和垂直顶部对齐.
编辑:IE11使用非供应商特定的Flexbox实现.灵活的框("Flexbox")布局更新
在Chrome/FF中正确调整中心和调整大小,在IE11中无法居中但正确调整大小
小提琴:http://jsfiddle.net/Dragonseer/3D6vw/
html, body
{
height: 100%;
width: 100%;
}
body
{
margin: 0;
}
.outer
{
min-width: 100%;
min-height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.inner
{
width: 80%;
}
Run Code Online (Sandbox Code Playgroud)
无处不在的中心,在缩小时缩小顶部
小提琴:http://jsfiddle.net/Dragonseer/5CxAy/
html, body
{
height: 100%;
width: 100%;
}
body
{
margin: 0;
display: flex;
}
.outer
{
min-width: 100%;
min-height: 100%;
display: flex;
align-items: center;
justify-content: …Run Code Online (Sandbox Code Playgroud) 所以我设法让Code First运行,它运行良好.
由于我仍在开发应用程序,因此数据库的结构尚未最终确定,因此我需要实现迁移.
我关注了官方博客帖子并获得了Update-Database命令.
但是,这只会更新数据库的SQLExpress版本.数据库的生产版本在Azure上,我在运行时指定连接字符串,因此Update-Database命令不起作用.
所以我的最后一个问题是:如何将自动迁移应用于在运行时指定连接字符串的生产数据库?
Any CPU - 首选32位选项有什么作用?
虽然我知道WinRT无法处理exe并且只能运行Windows应用商店应用,但StackOverflow上存在几个问题,它们提出同样的问题并且都引用了这个博客:
在.NET 4.5和Visual Studio 11中,奶酪已被移动.大多数.NET项目的默认设置是AnyCPU,但现在AnyCPU有多个含义.还有一个额外的子类型AnyCPU,"任何CPU 32位首选",这是新的默认值(总体而言,/ platform C#编译器交换机现在有五个选项:x86,Itanium,x64,anycpu和anycpu32bitpreferred ).使用AnyCPU的那种风格时,语义如下:
- 如果进程在32位Windows系统上运行,则它将以32位进程运行.IL被编译为x86机器代码.
- 如果进程在64位Windows系统上运行,则它将以32位进程运行.IL被编译为x86机器代码.
- 如果进程在ARM Windows系统上运行,则它将以32位进程运行.IL编译为ARM机器代码.
但是,购买Surface RT后,我创建了一个Hello World程序,将其设置为Any CPU,检查Prefer 32 Bit标志,编译并将其复制到Surface.当我运行该程序时,操作系统告诉我,它无法运行程序,我应该像任何x86/x64 exe一样关注市场.显示的确切消息是:"此应用程序无法在您的PC上运行.要查找此PC的应用程序,请打开Windows应用商店."
那么这实际上做了什么,是否可以在ARM上为Window RT编译Any CPU应用程序?
我正在开发一个小型的网络应用程序,我刚刚开发了我需要开始制定数据库决策的地方.我最初的计划是在Azure上使用MSSQL获取EF Code First,因为它只是简化了使用数据库的过程.但是,在调查Azure上的数据库托管功能时,我发现了Azure Table Storage,它为我打开了NoSQL世界.
虽然互联网上充斥着关于NoSQL功能的喋喋不休,但我设法收集的最大原因之一是NoSQL将整个对象存储在数据库中,而不会将数据分解到各种表中,这对性能有利.虽然这听起来很吸引人,但EF Code First通过自动将对象组合在一起并将对象分离到SQL数据库中而无需开发人员每次都不必担心查询,从而有效地消除了这个问题.
然而,我的主要问题是我找不到任何文档来使用像EF Code First和ASP.NET Identity与NoSQL数据库这样的东西.由于我的应用程序目前使用Identity,我希望避免切换到其他内容.
问:是否可以在Azure表中使用Code First和/或Identity?
编辑:关于我的应用程序的一点点作为极端简化,我的应用程序允许我的用户通过混合和匹配预配置的数据类型来创建自定义配置文件.例如,用户可以将任意数量的Quote对象添加到其配置文件中,然后定义引用的值(即"做你自己;其他人已经被占用了.").或者他们可以使用Movie对象来定义他们喜欢的电影的集合(即"Title:Inception,Year:2010").平均而言,用户可以在其页面上轻松拥有50个或更多此类属性; 它们可以拥有的属性数量没有限制.
使用这个例子,我可以很容易地看到我将如何使用Code First实现它(Profile有一个Quote对象列表和一个Movie对象列表).我还不确定这将如何映射到NoSQL数据库,如Azure Tables.因此,根据我的应用程序的需求,我不确定是否从Code First切换到NoSQL是一个合理的决定,我将丢失的特性和功能.
entity-framework azure azure-table-storage ef-code-first asp.net-identity
我正在研究一个使用新的ASP.NET身份进行身份验证的简单应用程序.由于我计划将来有一个移动应用程序,我已将身份验证放在Web API中,我从Razor Web Page(没有MVC或Forms)发布到jQuery.到目前为止,post工作正常并创建用户并将其记录在API端.
但是,我无法确定如何从那里开始.我需要设置IsAuthenticated,以便我可以提供正确的页面,但它总是返回false.由于Identity是非常新的,因此几乎没有可用的文档,我无法找到任何像从Web API运行它那么复杂的文档.
问:登录后从Web API中返回身份验证的正确方法是什么,以便User.Identity.IsAuthenticated正确设置?
Login.cshtml
@if (User.Identity.IsAuthenticated)
{
@RenderPage("/userpage.cshtml");
}
else
{
<form id="loginForm">
<b>Login</b>
<input type="email" placeholder="Email" name="email" id="loginEmail" />
<input type="password" placeholder="Password" name="password" id="loginPassword" />
<input type="submit" value="Log In"/>
</form>
}
<script>
$("#loginForm").submit(function(event)
{
event.preventDefault();
$.post("/api/login/",
{
Username: $('#loginEmail').val(),
Password: $('#loginPassword').val()
}, function ()
{
//???
}, "json");
return false;
});
</script>
Run Code Online (Sandbox Code Playgroud)
登录Web API
public class LoginController : ApiController
{
public async void Post(UserInfo info)
{
var manager = new AuthenticationIdentityManager(new IdentityStore()); …Run Code Online (Sandbox Code Playgroud) 我是HTML5和CSS3的新手,所以我正在开发一个简单的项目来更好地学习它.我最近发现了响应式设计,因此我创建了一个可扩展到手机的页面.我使用媒体查询,我创建了两个状态,一个用于屏幕640px(移动)和更小,一个用于屏幕641px和更大(桌面).该网站工作正常,当我缩放窗口并在我的手机上查看时显示正确的样式时,在我的桌面上显示正确的样式.
然而,在运行该网站后,我决定检查我的HTC One的分辨率 - 它是1080p.我的手机显示640px网站,无论方向如何.我想知道为什么会这样; 手机的更高分辨率不应该触发移动状态,但确实如此.我想我可能会对分辨率如何实际工作感到困惑.
那么,我如何确定手机(和平板电脑)的真实分辨率,以便我可以为它们创建适当缩放的网站?
//Mobile
@media screen and (max-width: 640px) {
...
}
//Desktop
@media screen and (min-width: 641px) {
...
}
Run Code Online (Sandbox Code Playgroud)
编辑 感谢下面的JoshCs评论,我意识到我在教程中使用了视口元标记.我想修改我的问题:viewport标签如何确定为任何给定设备显示的分辨率(如何根据设备的尺寸确定视口分辨率)?
<meta name="viewport" content="width=device-width; initial-scale=1.0">
Run Code Online (Sandbox Code Playgroud) 我有两个按钮彼此相邻使用flex,我的内容垂直居中,到目前为止工作得很好.但是,当我的网站在移动页面上查看时(使用响应式设计来缩放页面),第二个按钮(其中包含较少的文本)会变得与其同伴不同.
因此,目标是垂直对齐我的按钮上的文本,以及让两个按钮始终匹配彼此的大小.
<section class="buttonsSection">
<a class="button" href="#">Very Long Word</a>
<a class="button" href="#">Short Phrase</a>
</section>
.button {
padding: 20px 10px;
width: 150px;
background-color: deepskyblue;
color: white;
margin: 3px;
text-align: center;
}
.buttonsSection {
margin: 30px 0;
display: flex;
align-items: center;
justify-content: center;
}
body
{
width: 20%; /*Simulate page being reduced in size (i.e. on mobile)*/
margin: 0 auto;
}
Run Code Online (Sandbox Code Playgroud)
JSFiddle:http://jsfiddle.net/Dragonseer/WmZPg/ 如果问题不是很明显,请尝试减小Result窗口的宽度.
纵观http://tokbox.com/和各地的网络似乎表明Opentok是开源的.但是,我无法找到适当的许可证来详细描述这一点.虽然我在文档中找到了Server SDK,但我无法确定是否允许我使用它来托管我自己的Opentok服务器或者我可能会这样做.
链接:
问:Opentok开源吗?如果是这样,它是什么样的开源?我在哪里可以找到许可证?我可以托管自己的服务器吗?
当我创建一个Web窗体项目时,我的代码被编译成一个DLL,由IIS服务器处理.当我使用Javascript时,它由浏览器解释,我可以使用Chrome开发者工具或检查源代码来找到它.
但是,当我使用Razor语法创建ASP.NET网页时,我无法在任何地方找到代码.因为它不需要编译,所以它不会被放入DLL中,我无法使用Chrome的检查工具找到它的任何痕迹.
那么,Razor代码在哪里?
我是jQuery UI的新手,我正在尝试做一个简单的动画.当动画被触发时,我想要一个按钮滑出并按下它旁边的任何内容来填充空间.
使用幻灯片动画,我设法让按钮滑出,但内容弹出到新位置而不是被滑动按钮推过.另外一个问题是,完成幻灯片动画后,按钮似乎会弹出它的全尺寸.
问:当滑动当前占据该空间的内容时,如何向对象显示幻灯片?
JSFiddle http://jsfiddle.net/Dragonseer/z8mAY/
现行守则
$("#deleteButton").hide();
$("#editButton").click(function()
{
$("#deleteButton").toggle("slide", { direction: "right" }, 1500);
});
Run Code Online (Sandbox Code Playgroud)