Атрибут readonly
Атрибут / параметр readonly (от англ. «read only» ‒ «только для чтения») указывает, что текстовый элемент формы предназначен только для чтения.
Примечание
В отличии от атрибута « disabled » данный атрибут допускает принятие элементом фокуса (фокусировку на элементе) и возможность учавствовать в «tab-навигации».
Условия использования
Поддержка браузерами
Спецификация
| Верс. | Раздел |
|---|---|
| HTML | |
| 2.0 | |
| 3.2 | |
| 4.01 | 17.12.2 Read-only controls readonly [CI]. DTD: Transitional Strict Frameset |
| 5.0 | 4.10.5.3.3 The readonly attribute The readonly attribute. |
| 5.1 | 4.10.5.3.3. The readonly attribute The readonly attribute. |
| XHTML | |
| 1.0 | Extensible HyperText Markup Language DTD: Transitional Strict Frameset |
| 1.1 | Extensible HyperText Markup Language |
Значения
Данный атрибут является логическим атрибутом. В HTML данный атрибут может указываться либо без значения, либо с пустым значением, либо со значением « readonly ». В XHTML данный атрибут может указываться только в «развёрнутом виде», то есть со значением « readonly ».
readonly> readonly=""> readonly="readonly">
readonly="readonly" />
Read Only Attribute Класс
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает, доступно ли свойство, с которым связан данный атрибут, только для чтения или для чтения и записи. Этот класс не наследуется.
public ref class ReadOnlyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)] public sealed class ReadOnlyAttribute : Attribute
public sealed class ReadOnlyAttribute : Attribute
[] type ReadOnlyAttribute = class inherit Attribute
type ReadOnlyAttribute = class inherit Attribute
Public NotInheritable Class ReadOnlyAttribute Inherits Attribute
Наследование
ReadOnlyAttribute
Примеры
В следующем примере кода свойство помечает как доступное только для чтения.
[ReadOnly(true)] int get() < // Insert code here. return 0; >>
[ReadOnly(true)] public int MyProperty < get < // Insert code here. return 0; >>
Public ReadOnly Property MyProperty() As Integer Get ' Insert code here. Return 0 End Get End Property
В следующем примере кода показано, как проверка значение для ReadOnlyAttribute MyProperty . Во-первых, код получает со PropertyDescriptorCollection всеми свойствами объекта . Затем он индексирует в для PropertyDescriptorCollection получения MyProperty . Затем он возвращает атрибуты для этого свойства и сохраняет их в переменной атрибутов.
В примере представлены два разных способа проверки значения ReadOnlyAttribute. Во втором фрагменте кода в примере вызывается Equals метод . В последнем фрагменте кода в примере используется IsReadOnly свойство для проверка значения.
// Gets the attributes for the property. AttributeCollection^ attributes = TypeDescriptor::GetProperties( this )[ "MyProperty" ]->Attributes; // Checks to see whether the value of the ReadOnlyAttribute is Yes. if ( attributes[ ReadOnlyAttribute::typeid ]->Equals( ReadOnlyAttribute::Yes ) ) < // Insert code here. >// This is another way to see whether the property is read-only. ReadOnlyAttribute^ myAttribute = dynamic_cast(attributes[ ReadOnlyAttribute::typeid ]); if ( myAttribute->IsReadOnly ) < // Insert code here. >
// Gets the attributes for the property. AttributeCollection attributes = TypeDescriptor.GetProperties(this)["MyProperty"].Attributes; // Checks to see whether the value of the ReadOnlyAttribute is Yes. if(attributes[typeof(ReadOnlyAttribute)].Equals(ReadOnlyAttribute.Yes)) < // Insert code here. >// This is another way to see whether the property is read-only. ReadOnlyAttribute myAttribute = (ReadOnlyAttribute)attributes[typeof(ReadOnlyAttribute)]; if(myAttribute.IsReadOnly) < // Insert code here. >
' Gets the attributes for the property. Dim attributes As AttributeCollection = _ TypeDescriptor.GetProperties(Me)("MyProperty").Attributes ' Checks to see whether the value of the ReadOnlyAttribute is Yes. If attributes(GetType(ReadOnlyAttribute)).Equals(ReadOnlyAttribute.Yes) Then ' Insert code here. End If ' This is another way to see whether the property is read-only. Dim myAttribute As ReadOnlyAttribute = _ CType(attributes(GetType(ReadOnlyAttribute)), ReadOnlyAttribute) If myAttribute.IsReadOnly Then ' Insert code here. End If
Если вы пометили класс с ReadOnlyAttributeпомощью , используйте следующий пример кода, чтобы проверка значение .
AttributeCollection^ attributes = TypeDescriptor::GetAttributes( MyProperty ); if ( attributes[ ReadOnlyAttribute::typeid ]->Equals( ReadOnlyAttribute::Yes ) ) < // Insert code here. >
AttributeCollection attributes = TypeDescriptor.GetAttributes(MyProperty); if(attributes[typeof(ReadOnlyAttribute)].Equals(ReadOnlyAttribute.Yes)) < // Insert code here. >
Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(MyProperty) If attributes(GetType(ReadOnlyAttribute)).Equals(ReadOnlyAttribute.Yes) Then ' Insert code here. End If
Комментарии
Элементы, помеченные ReadOnlyAttribute как или true не имеющие Set метода, не могут быть изменены. Элементы, которые не имеют этого атрибута или помечены набором ReadOnlyAttribute для false , являются элементами чтения и записи, и их можно изменить. Значение по умолчанию — No.
Класс PropertyDescriptor применяет ReadOnlyAttribute в среде разработки и во время выполнения. Если свойство помечается значением ReadOnlyAttribute true , для этого атрибута устанавливается постоянный член Yes. Для свойства, помеченного значением ReadOnlyAttribute false , значение равно No. Поэтому, если вы хотите проверка значение этого атрибута в коде, необходимо указать атрибут как ReadOnlyAttribute.Yes или ReadOnlyAttribute.No.
Дополнительные сведения см. в разделе Атрибуты.
Конструкторы
Инициализирует новый экземпляр класса ReadOnlyAttribute.
Поля
Определяет значение по умолчанию для атрибута ReadOnlyAttribute, равное No (то есть свойство, с которым связан этот атрибут, доступно для чтения и записи). Это статическое ( static ) поле доступно только для чтения.
Определяет, что свойство, с которым связан данный атрибут, доступно и для чтения, и для записи и может быть изменено. Это статическое ( static ) поле доступно только для чтения.
Определяет, что свойство, с которым связан данный атрибут, доступно только для чтения и не может быть изменено в обозревателе серверов. Это статическое ( static ) поле доступно только для чтения.
Свойства
Возвращает значение, показывающее, доступно ли свойство, с которым связан этот атрибут, только для чтения.
В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.
Методы
Указывает, равен ли этот экземпляр заданному объекту.
Возвращает хэш-код данного экземпляра.
Возвращает объект Type для текущего экземпляра.
Определяет, является ли этот атрибут используемым по умолчанию.
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.
При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.
Создает неполную копию текущего объекта Object.
Возвращает строку, представляющую текущий объект.
Явные реализации интерфейса
Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.
Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.
Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).
Предоставляет доступ к открытым свойствам и методам объекта.
Что такое файлы «только для чтения» и для чего они используются?
Ответ: Файлы «только для чтения» («read-only») могут быть открыты, но не могут быть отредактированы. Они обычно используются в качестве шаблонов для создания новых файлов. Так как файлы «только для чтения» не могут быть изменены, они часто выступают в качестве модели или основы для создания нескольких похожих файлов. И Windows и Mac OS X поддерживают файлы «только для чтения».
ОС Windows
Чтобы сделать файл «только для чтения» («read-only») в Windows, сперва нужно щелкнуть правой кнопкой мыши по файлу, а затем выбрать пункт «Свойства» («Properties»). Затем в нижней части окна Свойства в разделе «Атрибуты» («Attributes») следует просто установить флажок «Только для чтения» (как показано ниже) и нажать кнопку Применить («Apply»).

Как только свойство файла установлено как «только для чтения», его нельзя перезаписать. Хотя, открыв файл, можно сохранить его с другим именем файла. Открытие файла только для чтения похоже на использование функции «Открыть как копию» («Open as a copy»), которую предлагают некоторые программы. Однако, в отличие от открытия файла с признаком «только для чтения», функция «Открыть как копию» создает копию файла при его открытии, а не при его сохранении.
Примечание: Если попытаться отредактировать и сохранить файл с атрибутом «только для чтения», то появится ошибка при сохранении «Не удается создать файл (путь к файлу). Проверьте правильность пути и имени файла.»
Mac OS X
Пользователи ОС Mac также могут создавать документы «только для чтения». Чтобы сделать файл «только для чтения» в Mac OS X, нужно щелкнуть правой кнопкой мыши (или Control-клик) по файлу и затем выбрать пункт меню «Получение информации» («Get Info»). В верхней части Информационного окна имеется флажок «Блокнот» («Stationery Pad») (см. ниже). Установка этого флажка, преобразует файл в шаблон «только для чтения». Всякий раз, когда открывается файл с установленным флажком «Блокнот», создается копия файла.
Опции «Блокнот» в Mac OS X служат полезным средством создания нескольких похожих документов на основе одного стандартного документа. Тем не менее, «блокноты» могут быть перезаписаны, если файл с таким же именем сохраняется на документ-«блокнот». Таким образом, рекомендуется для хранения документов-«блокнотов» использовать отдельный каталог, в котором не хранить редактируемые документы.
В Mac OS X для предотвращения от случайного удаления важных документы или заменены их новыми документами, пользователи могут выбрать флажок «Заблокированные» («Locked») в Информационном окно файла (см. выше).
Псевдокласс :read-only
Применяется к полям формы, у которых задан атрибут readonly . Такое поле не может быть модифицировано, при этом оно получает фокус, а данные в таком поле можно выделить и скопировать.
Синтаксис
input:read-only
| Описание | Пример | |
|---|---|---|
| Указывает тип значения. | ||
| A && B | Значения должны выводиться в указанном порядке. | && |
| A | B | Указывает, что надо выбрать только одно значение из предложенных (A или B). | normal | small-caps |
| A || B | Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. | width || count |
| [ ] | Группирует значения. | [ crop || cross ] |
| * | Повторять ноль или больше раз. | [,]* |
| + | Повторять один или больше раз. | + |
| ? | Указанный тип, слово или группа не является обязательным. | inset? |
| Повторять не менее A, но не более B раз. | ||
| # | Повторять один или больше раз через запятую. | # |
Пример
Примечание
Firefox поддерживает псевдокласс :-moz-read-only .
Спецификация
| Спецификация | Статус |
|---|---|
| WHATWG HTML Living Standard | Живой стандарт |
| HTML5 | Возможная рекомендация |
| Selectors Level 4 | Рабочий проект |
| CSS Basic User Interface Module Level 3 | Рабочий проект |
Спецификация
Каждая спецификация проходит несколько стадий одобрения.
- Recommendation ( Рекомендация ) — спецификация одобрена W3C и рекомендована как стандарт.
- Candidate Recommendation ( Возможная рекомендация ) — группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
- Proposed Recommendation ( Предлагаемая рекомендация ) — на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
- Working Draft ( Рабочий проект ) — более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
- Editor’s draft ( Редакторский черновик ) — черновая версия стандарта после внесения правок редакторами проекта.
- Draft ( Черновик спецификации ) — первая черновая версия стандарта.
Браузеры
| 13 | 8 | 10.5 | 5 | 3 |
В таблице браузеров применяются следующие обозначения.
- — элемент полностью поддерживается браузером;
- — элемент браузером не воспринимается и игнорируется;
- — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.
Число указывает версию браузреа, начиная с которой элемент поддерживается.
Справочник CSS
- !important
- ::after
- ::backdrop
- ::before
- ::first-letter
- ::first-line
- ::marker
- ::placeholder
- ::selection
- :active
- :blank
- :buffering
- :checked
- :default
- :dir
- :disabled
- :empty
- :enabled
- :first-child
- :first-of-type
- :focus
- :focus-within
- :fullscreen
- :hover
- :in-range
- :indeterminate
- :invalid
- :is()
- :lang()
- :last-child
- :last-of-type
- :link
- :muted
- :not()
- :nth-child()
- :nth-last-child()
- :nth-last-of-type()
- :nth-of-type()
- :only-child
- :only-of-type
- :optional
- :out-of-range
- :paused
- :placeholder-shown
- :playing
- :read-only
- :read-write
- :required
- :root
- :seeking
- :stalled
- :target
- :valid
- :visited
- :volume-locked
- @charset
- @document
- @font-face
- @import
- @keyframes
- @media
- @page
- @supports
- @viewport
- accent-color
- align-content
- align-items
- align-self
- all
- animation
- animation-delay
- animation-direction
- animation-duration
- animation-fill-mode
- animation-iteration-count
- animation-name
- animation-play-state
- animation-timing-function
- aspect-ratio
- backdrop-filter
- backface-visibility
- background
- background-attachment
- background-blend-mode
- background-clip
- background-color
- background-image
- background-origin
- background-position
- background-position-x
- background-position-y
- background-repeat
- background-size
- block-size
- border
- border-bottom
- border-bottom-color
- border-bottom-left-radius
- border-bottom-right-radius
- border-bottom-style
- border-bottom-width
- border-collapse
- border-color
- border-image
- border-left
- border-left-color
- border-left-style
- border-left-width
- border-radius
- border-right
- border-right-color
- border-right-style
- border-right-width
- border-spacing
- border-style
- border-top
- border-top-color
- border-top-left-radius
- border-top-right-radius
- border-top-style
- border-top-width
- border-width
- bottom
- box-decoration-break
- box-shadow
- box-sizing
- caption-side
- caret-color
- clear
- clip
- color
- column-count
- column-fill
- column-gap
- column-rule
- column-rule-color
- column-rule-style
- column-rule-width
- column-span
- column-width
- columns
- content
- counter-increment
- counter-reset
- cursor
- direction
- display
- empty-cells
- filter
- flex
- flex-basis
- flex-direction
- flex-flow
- flex-grow
- flex-shrink
- flex-wrap
- float
- font
- font-family
- font-kerning
- font-size
- font-stretch
- font-style
- font-variant
- font-weight
- gap
- height
- hyphenate-character
- hyphenate-limit-chars
- hyphens
- image-rendering
- justify-content
- left
- letter-spacing
- line-clamp
- line-height
- list-style
- list-style-image
- list-style-position
- list-style-type
- margin
- margin-bottom
- margin-left
- margin-right
- margin-top
- marks
- max-height
- max-width
- min-height
- min-width
- mix-blend-mode
- object-fit
- opacity
- order
- orphans
- outline
- outline-color
- outline-offset
- outline-style
- outline-width
- overflow
- overflow-x
- overflow-y
- padding
- padding-block
- padding-block-end
- padding-block-start
- padding-bottom
- padding-inline
- padding-inline-end
- padding-inline-start
- padding-left
- padding-right
- padding-top
- page-break-after
- page-break-before
- page-break-inside
- perspective
- perspective-origin
- place-content
- pointer-events
- position
- quotes
- resize
- right
- row-gap
- scroll-behavior
- tab-size
- table-layout
- text-align
- text-align-last
- text-decoration
- text-decoration-color
- text-decoration-line
- text-decoration-skip-ink
- text-decoration-style
- text-emphasis
- text-emphasis-color
- text-emphasis-position
- text-emphasis-style
- text-fill-color
- text-indent
- text-orientation
- text-overflow
- text-shadow
- text-stroke
- text-stroke-color
- text-stroke-width
- text-transform
- top
- transform
- transform-origin
- transform-style
- transition
- transition-delay
- transition-duration
- transition-property
- transition-timing-function
- unicode-bidi
- user-select
- vertical-align
- visibility
- white-space
- widows
- width
- word-break
- word-spacing
- word-wrap
- writing-mode
- z-index
- zoom