Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум веб-мастеров _ Языки разметки (HTML, XML, CSS, ...) и JavaScript _ Frame

Автор: Panchos 5.9.2007, 19:43

Всем привет, подскажите как сделать ссылку так, чтобы страница открывалась в другом фрейме

Автор: sashkovishe 5.9.2007, 21:08

Ну вот, например:
index.html

Код

<frameset rows="100,*">
<frame src="menu.html" name="frame1">
<frame src="page1.html" name="frame2">
</frameset>

Объявляем, как обычно, фреймы... только присваиваем им имена...

menu.html
Код

<html>

<head>
    <title>Untitled 2</title>
</head>
<base target="frame2">
<body>
<a href="page2.html">фрейм 2</a>
</body>
</html>

Здесь важно: <base target="frame2"> - указывает фрейм, в котором будет открываться страница...

Автор: Panchos 6.9.2007, 14:50

Можно ли во фрейме поменять цвет прокрутки, и как???

Автор: sashkovishe 6.9.2007, 16:43

Цитата
Можно ли во фрейме поменять цвет прокрутки, и как???

Конечно можно... для этого нужно указывать в странице (которая открывается во фрейме) стили (css) для скролбара...
Например, в page1.html и в page2.html, пишем вот этот код между тегами <head> и </head>:
Код

<style>
body {
    scrollbar-face-color: red;
    scrollbar-shadow-color: blue;
    scrollbar-highlight-color:blue;
    scrollbar-3 dlight-color:blue;
    scrollbar-darshadow-color:blue;
    scrollbar-track-color:blue;
    scrollbar-arrow-color:green;
}
</style>

После двоеточия идет название цвета. Думаю разберетесь какое свойство что обозначает...
Если страниц много, то лучше создать отдельный css файл с кодом выше (только без <style></style>) и сохранить по названием например styles.css, а потом в каждой странице просто писать (тоже между <head> и </head>):
Код

<LINK rel="stylesheet" href="styles.css">

Автор: Panchos 10.9.2007, 13:02

Есть ли у фреймов свойство, чтобы ссылка открывалась не в новом окне, а в том же где и фрейм.

Автор: sashkovishe 10.9.2007, 14:03

Цитата
Есть ли у фреймов свойство, чтобы ссылка открывалась не в новом окне, а в том же где и фрейм.

Не совсем понял вопрос (в каком фрейме?)...

Но если имелось ввиду, чтобы страница открылась в том же фрейме где находится сама ссылка, то здесь нужно просто указать <base target="frame1">

Автор: cybri0nix 10.9.2007, 15:43

Во многих статьях читал, что фреймы не желательно использовать, не мог бы кто - нибудь объяснить почему.

Автор: gid 10.9.2007, 16:28

Цитата
Во многих статьях читал, что фреймы не желательно использовать, не мог бы кто - нибудь объяснить почему.

Поисковые боты их нелюбя и не понимают... но если нужно сделать какой-либо сервис, для людей, то можно использовать фреймы не задумываясь... хотя сейчас? лично я, стараюсь везде вместо фреймов использовать AJAX.

Автор: Panchos 10.9.2007, 19:34

Цитата
Не совсем понял вопрос (в каком фрейме?)...


Есть несколько фреймов расположенных на одной странице. Нужно сделать, если возможно конечно, чтобы ссылка открывалась не на новой странице и не во фрейме, а на всей странице, где расположен фрейм.
Спасибо, что помогли с прокрутками, очень красиво получилось.

Автор: gid 10.9.2007, 20:59

Цитата
Нужно сделать, если возможно конечно, чтобы ссылка открывалась не на новой странице и не во фрейме, а на всей странице, где расположен фрейм.

В HTML коде нужного фрейма дописать между <head></head> следующий код: <base target="_self">

Автор: Panchos 12.9.2007, 18:06

Покажи на примере, а то чет не воткну.

Автор: sashkovishe 12.9.2007, 19:27

Цитата(gid)
В HTML коде нужного фрейма дописать между <head></head> следующий код: <base target="_self">

Цитата(Panchos)
Покажи на примере, а то чет не воткну.

Так, он не будет открывать на всей странице, он так откроется только в самом фрейме т.к. указание стоит на self (на себя)...
Так что тут только открывать страницу или полностью в новом окне, или в определенном фрейме... т.к. фреймы описаны уже на странице, то их изменить нельзя...
Остается только открывать в новом окне все...

Автор: Panchos 17.9.2007, 12:54

Спасибо всем. Разобрался. Оказывается все банально просто. Надо было просто написать
<base target="_top">

Автор: Noran 12.11.2007, 12:04

Доброе время суток всем ! У меня такая проблема с фреймами очень прошу помочь: нет полосы прокрутки всего набора фреймов sad.gif Хотя справа присутствует место под него визуально. Не путайте с полосой прокрутки самого фрейма. Пишу сайт в Macromedia Dreamweaver MX 8.01 если это важно.

Автор: gid 12.11.2007, 17:23

Несовсем понятно, что вы имеете в виду, можно посмотрать на HTML код?

Автор: Noran 19.11.2007, 15:59

Цитата(gid @ 12.11.2007, 18:23) *

Несовсем понятно, что вы имеете в виду, можно посмотрать на HTML код?

Вот код набора фреймов:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ Без Имени</title>
</head>
<frameset rows="239,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="OnTop.html" name="topFrame" frameborder="No" scrolling="no" noresize="noresize" marginwidth="1004" marginheight="239" id="topFrame" />
<frameset cols="220,*" frameborder="no" border="0" framespacing="0">
<frameset rows="320,*" frameborder="no" border="0" framespacing="0">
<frame src="LeftBottons.html" name="leftFrame" frameborder="no" scrolling="No" noresize="noresize" marginwidth="220" marginheight="320" id="leftFrame" />
<frame src="Clock.html" name="bottomFrame" frameborder="no" scrolling="No" noresize="noresize" marginwidth="220" marginheight="200" id="bottomFrame" />
</frameset>
<frame src="History.html" name="mainFrame" frameborder="No" scrolling="no" noresize="noresize" marginwidth="780" marginheight="520" id="mainFrame" />
</frameset>
</frameset>
<noframes><body>
</body>
</noframes></html>


Приводить коды страниц, втыкающихся во фреймы, думаю нет смысла.

Автор: gid 19.11.2007, 16:51

Полосы прокрутки отсутствуют из-за атрибута scrolling="No", уберите его или замените его на scrolling="Yes" и все стант так, как Вы хотите, т.е. появятся полосы прокрутки.

Автор: Noran 20.11.2007, 15:09

Дак дело в том что мне не нужно прокручивать эти фреймы по отдельности. Мне необходимо прокрутить весь набор фреймов. Дело в том когда вся страница в сборе она не входит в экран. Часть страницы сайта скрыта внизу и обычной в таких случаях полосы прокрутки (той что мы видим справа), чтоб посмотреть что снизу, нет.

Автор: sashkovishe 20.11.2007, 22:38

Так правильно, вы же используете обычные фреймы, применяемые ко всей странице... т.е. здесь вы делите, полностью, саму страницу и при этом главного скроллбара не существует... Другое дело, если бы вы использовали встроенные фреймы, тогда полоса прокрутки была бы на всю страницу...

Автор: Noran 25.1.2008, 18:16

Цитата(sashkovishe @ 20.11.2007, 23:38) *

Другое дело, если бы вы использовали встроенные фреймы, тогда полоса прокрутки была бы на всю страницу...

Замаялся я уже с этими фреймами, но нужны они sad.gif Вот вам код набора фреймов подскажите мне глупому как его нужно поправить чтобы полоса прокрутки для всей страницы одновременно появилась. Время поджимает. sad.gif

Цитата
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Кафедра общей химической технологии</title>
</head>
<frameset rows="239,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="OnTop.html" name="topFrame" frameborder="No" scrolling="no" noresize="noresize" marginwidth="1004" marginheight="239" id="topFrame" />
<frameset cols="220,*" frameborder="no" border="0" framespacing="0">
<frameset rows="320,*" frameborder="no" border="0" framespacing="0">
<frame src="LeftBottons.html" name="leftFrame" frameborder="no" scrolling="No" noresize="noresize" marginwidth="220" marginheight="320" id="leftFrame" />
<frame src="Clock.html" name="bottomFrame" frameborder="no" scrolling="No" noresize="noresize" marginwidth="220" marginheight="200" id="bottomFrame" />
</frameset>
<frame src="History.html" name="mainFrame" frameborder="No" scrolling="no" noresize="noresize" marginwidth="780" marginheight="520" id="mainFrame" />
</frameset>
</frameset>
<noframes>
</noframes></html>

Автор: Noran 11.2.2008, 11:42

Прошу всё-же обратить внимание на мою проблему. sad.gif Возможно вы мне посоветуете способ как сделать так, чтобы при нажатии на ссылку открывалась инет-страница в рамочке на главной типо фреймов.

Invision Power Board ()
© Invision Power Services ()