css3PIE или PIE.htc в Asp.net - PullRequest
       31

css3PIE или PIE.htc в Asp.net

1 голос
/ 24 января 2012

Ну, я использовал css3pie в asp.net, который не работает.Я перепробовал все возможные решения.Искал много форумов, но не смог правильно использовать PIE в asp.net.Позвольте мне показать вам структуру моего проекта.

У меня есть главная и внутренняя главные страницы в иерархии моего проекта.Css3pie работает на тех страницах, которые не используют мастер-страницы.Мои css и .htc файлы выглядят следующим образом

  • Root
    • css
    • script

Когда яиспользуйте css3PIE без главной страницы, это работает:

<script type="text/javascript" src="../Scripts/html5.js"></script>        

<link href="css/IE.css" rel="stylesheet" type="text/css" />

Приведенный выше код работает.Но когда я использовал любую страницу с мастером.Это не работает.Мой CSS выглядит примерно так:

behavior: url('../Scripts/PIE.htc');

CSS находится в файле IE.css.Вы можете увидеть в приведенном выше коде.Помните, что я пробовал каждую возможную комбинацию для ссылки .htc в css

behavior: url('../Scripts/PIE.htc');

behavior: url('/Scripts/PIE.htc');

behavior: url('/PIE.htc');

behavior: url('PIE.htc');

with and without quotes

Еще одна вещь.Многие люди говорят, что это из-за относительного пути.Ну, я проверил эти вещи.когда я смотрю на визуализированный HTML в инструментах разработки в IE.Применяется поведение, но не работает.Пожалуйста, помогите мне.Это будет высоко оценено.Заранее спасибо

Ответы [ 2 ]

1 голос
/ 14 декабря 2012

Это не проблема пути ... это связано с пониманием веб-сервером того, как обслуживать файл .htc.Имеется скрипт-обертка, который делает это для PHP, вы можете начать с него и настроить его для IIS.

1 голос
/ 31 января 2012

Хорошо, я исправил проблему. Поэтому я пишу здесь, чтобы помочь другим людям. Когда вы используете главные страницы в asp.net и используете файл .htc как относительный путь в css, тогда используйте положение как относительное. для целевого элемента, который использовал стиль CSS3. Например, класс css является круглым

<style>
.round-box
{
  border: 1px solid #696;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  behavior: url(PIE.htc);
}
</style>

Элемент html, к которому мы применим стиль .round-box:

<div class="round-box">This is a round Div<div>

Так что те, у кого проблемы с закругленными углами, не работающие в IE, просто устанавливают определенную позицию IE: относительно браузеров IE, как.

 <!--[if lt IE 9]>
    <style>        
        .round-box
        {
            position: relative;
        }       
    </style>
 <![endif]-->

Это исправит проблему с раундом или те, у которых нет видимой границы Имейте в виду положение: относительный будет влиять на дочерние элементы. Используйте это с умом

...