IE7,IE8,IE9支持带有Bootstrap的Laravel应用程序,用于“占位符”

时间:2015-06-03 05:32:35

标签: javascript laravel twitter-bootstrap-3 internet-explorer-8 placeholder

我已经构建了一个Laravel 4.2应用Sputnikart

使用Bootstrap v3.2.0并且我使用这个网站作为我的投资组合的一部分,我最近发现超过50%的人访问我的网站并可能访问该网站使用的是IE7到IE9,虽然它在其他网站上完美运行浏览器,一切都在IE8上乱七八糟。

我花了一天时间研究和尝试不同的方法来解决许多问题(添加了html5shiv.js& respond.js)来修复菜单崩溃并变得不可行并尝试使用Mathias Bynens(placeholder.js)文件来修复占位符不可见,但是一旦我这样做,我的应用程序就会停止正确验证,以便即使我无法登录。

我在master.blade上有通常的声明     

<!--[if lt IE 7]>
<html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en">
<![endif]-->

<!--[if IE 7]>
<html class="no-js lt-ie9 lt-ie8" lang="en">
<![endif]-->

<!--[if IE 8]>
<html class="no-js lt-ie9" lang="en">
<![endif]-->

<!--[if gt IE 8]><!--> <html class="no-js" lang="en">
<!--<![endif]-->

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> ...

我真的发布这个,看看是否有人可以帮助处理一个好的指针和资源来处理一个带有Bootstrap for IE7到IE9的Laravel 4.2应用程序,问题太多了,无法提及

thankx

有条件的评论......     .ie6 .ie7 .ie8 .form-control :: - moz-placeholder {       _color:蓟;       *颜色:蓟;       颜色:蓟\ 9;     }

2 个答案:

答案 0 :(得分:0)

与IE8的laravel 4.2 app兼容性有类似的麻烦。 我的网站是sirai.gim.med.up.pt/index.php/ram/create

除IE8及更低版本外,它适用于所有浏览器。 我的main.blade中没有声明,我应该吗?

<!DOCTYPE html>
<html>
<head>
    <title>{{trans('views.title')}}</title>
     <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    {{HTML::style('css/main.css')}}
	
    {{HTML::style('http://maxcdn.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css')}}
    {{HTML::style('css/datepicker3.css')}}
     {{HTML::style('css/bootstrap-table.css')}}
	
</head>

测试了在这里不起作用的刀片,就像你们两个http://validator.w3.org/nu/?doc=http%3A%2F%2Fsirai.gim.med.up.pt%2Findex.php%2Fram%2Fcreate

一样

感谢一些支持:)

我第一次作为注册用户在Stack Overflow上发帖,抱歉,如果我在上面的答案中看不到某些解决方案。

答案 1 :(得分:0)

@Toni_Manshengo

到头部添加我在问题中列出的代码

您还需要将以下文件添加到您的应用程序和结束标记之上(jquery版本不得高于显示,因为更高版本与旧IE浏览器不兼容

@section ('scripts')
{{ HTML::script('js/jquery-1.11.3.min.js') }}
{{ HTML::script('js/bootstrap.min.js') }}
{{ HTML::script('js/modernizr-2.8.3.min.js') }}
{{ HTML::script('js/placeholder.min.js') }}
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
  <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->

你还需要为css文件添加一些额外的样式,用于IE7,IE8,IE9相当于

/* support for IE6/7 uses media, */
@media, { 
.form-control::-moz-placeholder .ie6 .ie7 { color: thistle; } 
}
/* support for IE8 uses \0 */
@media all\0 { 
.form-control::-moz-placeholder .ie8 { color: thistle; } 
} 
/* support for IE9 uses \9  targets IE8 and bellow */
@media all and (monochrome:0) { 
.form-control::-moz-placeholder .ie8 .ie9 { color: thistle\9; }
} 
.form-control:-ms-input-placeholder {
color: #999999;
}
/* support for IE6/7 uses media, */
@media, { 
.form-control:-ms-input-placeholder .ie6 .ie7{ color: thistle; } 
}
/* support for IE8 uses \0 */
@media all\0 { 
.form-control:-ms-input-placeholder .ie8 { color: thistle; } 
} 
/* support for IE9 uses \9  targets IE8 and bellow */
@media all and (monochrome:0) { 
.form-control:-ms-input-placeholder .ie8 .ie9 { color: thistle\9; }
} 
.form-control::-webkit-input-placeholder {
color: #999999;
}
/* support for IE6/7 uses media, */
@media, { 
.form-control::-webkit-input-placeholder .ie6 .ie7 { color: thistle; } 
}
/* support for IE8 uses \0 */
@media all\0 { 
.form-control::-webkit-input-placeholder .ie8 { color: thistle; } 
} 
/* support for IE9 uses \9  targets IE8 and bellow */
@media all and (monochrome:0) { 
.form-control::-webkit-input-placeholder .ie8 .ie9 { color: thistle\9; }
} 

希望这可以帮助你和其他人在仍然有很多IE8用户的地方,我花了很长时间才弄清楚 佐